[Python-bugs-list] [ python-Bugs-548109 ] Build fails in _curses module

SourceForge.net noreply@sourceforge.net
Wed, 12 Mar 2003 06:15:40 -0800


Bugs item #548109, was opened at 2002-04-24 15:04
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=548109&group_id=5470

Category: Build
Group: Python 2.2.2
Status: Open
Resolution: None
>Priority: 5
Submitted By: Ralf Hildebrandt (hildeb)
Assigned to: Nobody/Anonymous (nobody)
Summary: Build fails in _curses module

Initial Comment:
WHile building Python-2.2.1 on HP-UX 10.20 I get:

...
building '_curses' extension
gcc -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -fPIC -I.
-I/mnt/disk4/gnu/Python-2.2.1/./Include -I/usr/local/include
-IInclude/ -c /mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c -o
build/temp.hp-ux-B.10.20-9000/715-2.2/_cursesmodule.o -DNDEBUG -g -O3
-Wall -Wstrict-prototypes
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c: In function PyCursesWindow_EchoChar':
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:710: structure has no member named _flags'
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:710: _ISPAD' undeclared (first use in this 
function)
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:710: (Each undeclared identifier is reported 
only once
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:710: for each function it appears in.)
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c: In function PyCursesWindow_NoOutRefresh':
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:1118: structure has no member named _flags'
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:1118: _ISPAD' undeclared (first use in this 
function)
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c: In function PyCursesWindow_Refresh':
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:1260: structure has no member named _flags'
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:1260: _ISPAD' undeclared (first use in this 
function)
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c: In function PyCursesWindow_SubWin':
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:1326: structure has no member named _flags'
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:1326: _ISPAD' undeclared (first use in this 
function)
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c: In function PyCurses_tigetflag':
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:2264: warning: implicit declaration of 
function tigetflag'
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c: In function PyCurses_tigetnum':
/mnt/disk4/gnu/Python-2.2.1/Modules/_cursesmodule.c:2277: warning: implicit declaration of 
function tigetnum'



----------------------------------------------------------------------

>Comment By: Michael Hudson (mwh)
Date: 2003-03-12 14:15

Message:
Logged In: YES 
user_id=6656

1) please don't dick with the priority... curses not
building is never going to be priority 9, sorry

2) what version of ncurses do you have installed?

3) could you attach config.log/pyconfig.h?


----------------------------------------------------------------------

Comment By: Ralf Hildebrandt (hildeb)
Date: 2003-03-12 14:00

Message:
Logged In: YES 
user_id=77128

Today I rebuild 2.2.2 and had exactly the same problem. 
My fix -- I commented out the explicit "extern int setupterm" 
declaration: 
 
/*  These prototypes are in <term.h>, but including this header 
    #defines many common symbols (such as "lines") which 
breaks the 
    curses module in other ways.  So the code will just specify 
    explicit prototypes here. */ 
//extern int setupterm(char *,int,int *); 
 
Comments: I have ncurses installed. 

----------------------------------------------------------------------

Comment By: A.M. Kuchling (akuchling)
Date: 2002-11-06 14:28

Message:
Logged In: YES 
user_id=11375

I agree with Michael.  The _ISPAD code is inside #ifdef WINDOW_HAS_FLAGS, which is detected by the configure script. 
It must be getting set to 1, but the compilation is picking up some different header files, or the same headers with different options.

The 'implicit declaration of tigetflag' presumably means either your platform doesn't support tigetflag(), in which case the curses module will need more changes to support its absence, or the prototype is in some header file that isn't being included.


----------------------------------------------------------------------

Comment By: Michael Hudson (mwh)
Date: 2002-04-24 15:18

Message:
Logged In: YES 
user_id=6656

Do you have ncurses installed?  It looks somewhat like
configure is detecting ncurses but the module is being
compiled against some lesser curses.  Not sure, though.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=548109&group_id=5470