Operating System - HP-UX
1753428 Members
5003 Online
108793 Solutions
New Discussion юеВ

having problems getting perl modules curses working on 11.11

 
Jim Galliher
Advisor

having problems getting perl modules curses working on 11.11

I am trying to get perl module curses-1.23 on an hpux 11.11 system. When I run the make, i get:
cc -c -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 +z -I/usr/local
/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +O2 +Onolimit -DVERSION=\
"1.23\" -DXS_VERSION=\"1.23\" +Z "-I/opt/perl587/lib/5.8.7/PA-RISC2.0-LP64/CORE
" Curses.c
cc: "/usr/include/curses.h", line 56: error 1000: Unexpected symbol: "int".
cc: "/usr/include/curses.h", line 131: error 1000: Unexpected symbol: "int".
cc: "CursesBoot.c", line 459: error 1588: "A_INVIS" undefined.
cc: "CursesBoot.c", line 459: error 1588: "A_PROTECT" undefined.
cc: "CursesBoot.c", line 459: error 1588: "A_ALTCHARSET" undefined.
cc: "CursesBoot.c", line 459: error 1588: "A_COLOR" undefined.
cc: "CursesBoot.c", line 459: warning 563: Argument #1 is not the correct type.
*** Error exit code 1

I tried changing c-config.h to use curses_colr/curses instead and got these messages:

cc -c -Ae -D_HPUX_SOURCE -Wl,+vnocompatwarnings +DD64 +z -I/usr/local
/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +O2 +Onolimit -DVERSION=\
"1.23\" -DXS_VERSION=\"1.23\" +Z "-I/opt/perl587/lib/5.8.7/PA-RISC2.0-LP64/CORE
" Curses.c
cc: "/usr/include/curses_colr/curses.h", line 77: warning 554: Declarator is mis
sing.
cc: "/usr/include/curses_colr/curses.h", line 84: warning 554: Declarator is mis
sing.
cc: "/usr/include/curses_colr/curses.h", line 111: error 1000: Unexpected symbol
: "int".
*** Error exit code 1

any help would be appreciated.


3 REPLIES 3
Dennis Handly
Acclaimed Contributor

Re: having problems getting perl modules curses working on 11.11

/usr/include/curses.h, line 56: error 1000:
/usr/include/curses.h, line 131: error 1000:
What's on these lines and the line before each?

What's here?
/usr/include/curses_colr/curses.h, line 77:
/usr/include/curses_colr/curses.h, line 84:
/usr/include/curses_colr/curses.h, line 111:
Jim Galliher
Advisor

Re: having problems getting perl modules curses working on 11.11


from curses.h

54 #ifndef _CHTYPE_DEFINED
55 # define _CHTYPE_DEFINED
56 typedef uint32_t chtype;
57 #endif /* _CHTYPE_DEFINED */



129 #ifndef _SCREEN_DEFINED
130 # define _SCREEN_DEFINED
131 typedef struct __reserved_str2 SCREEN;
132 #endif /* _SCREEN_DEFINED */


from curses_colr/curses


74 #ifdef CHTYPE
75 typedef CHTYPE chtype;
76 #else
77 typedef unsigned long chtype;
78 #endif /* CHTYPE */
79
80 /*
81 * attr_t is a new type which we added for internationalization
82 * compatibility.
83 */
84 typedef unsigned long attr_t;



109 /* short-hand notations */
110 typedef struct _win_st WINDOW;
111 typedef struct screen SCREEN;
112 typedef struct _Mouse MOUSE_STATUS;
Dennis Handly
Acclaimed Contributor

Re: having problems getting perl modules curses working on 11.11

56 typedef uint32_t chtype;
131 typedef struct __reserved_str2 SCREEN;

Someone has evil macros for chtype and SCREEN set to int?

77 typedef unsigned long chtype;
84 typedef unsigned long attr_t;

Someone has macros for chtype and attr_t set to empty?

111 typedef struct screen SCREEN;

And SCREEN set to int.

If you compile with -E and redirect stdout you can check macro expansions one those lines.