Operating System - HP-UX
1755653 Members
3312 Online
108837 Solutions
New Discussion юеВ

Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

 
SOLVED
Go to solution
Kalin Evtimov
Regular Advisor

Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

I want to compile Perl from scratch in order to get it work better with my system (HP-UX 11.23). I installed gcc 3.4.3-depot from HP. Than I downloaded the Perl-sources (stable) from perl.com and I tried:
$ sh Configure -Dcc=gcc -d
this was Okay, then
$ make
I get this:


$ make
`sh cflags "optimize='-g -O'" miniperlmain.o` miniperlmain.c
CCCMD = gcc -DPERL_CORE -c -D_HPUX_SOURCE -DDEBUGGING -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O -Wall
In file included from perl.h:4112,
from miniperlmain.c:36:
/usr/include/sys/ipc.h:51: error: parse error before "cid_t"
/usr/include/sys/ipc.h:56: error: parse error before '}' token
In file included from perl.h:4113,
from miniperlmain.c:36:
/usr/include/sys/sem.h:91: error: field `sem_perm' has incomplete type
*** Error exit code 1

Stop.

Ealrier I got this error trying to install some Perl-Module, but I do not understand this error message. Can anybody give me an advice?
10x a lot!
23 REPLIES 23
Stephen Keane
Honored Contributor
Solution

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

Can you post lines 40 - 60 of /usr/include/sys/ipc.h

might give us a clue
T G Manikandan
Honored Contributor

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

which make you are using,

use the gnu version of make from

http://hpux.cs.utah.edu/hppd/hpux/Gnu/make-3.80/
Kalin Evtimov
Regular Advisor

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

Here is the part from 40-56. The datatype sid is included from types.h

40
41 mode_t mode; /* access modes */
42 unsigned short __seq16;/* OLD slot usage sequence number */
43 key_t key; /* key */
44
45 unsigned short __ndx; /* NOT USED; was ndx of proc who has loc
k */
46 unsigned short __wait; /* waits, wanted, lock bits; reserved fo
r
47 specific ipc facilities */
48
49 unsigned int seq; /* slot usage sequence number */
50 # ifdef _INCLUDE_HPUX_SOURCE
51 cid_t cid; /* Compartment ID */
52 # else
53 int __cpad; /* pad for non-hp code */
54 # endif /* _INCLUDE_HPUX_SOURCE */
55 char pad[12];/* room for future expansion */
56 };
Stephen Keane
Honored Contributor

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

Can you post the definition of cid_t from types.h (if it is in there) including any wrapping #ifdef type stuff. I don't have an Itanium, so my header files are different and don't include the cid_t type at all!
Kalin Evtimov
Regular Advisor

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

make responds to all calls with:
No arguments or desription file

How can I use the GNU make by default?
T G Manikandan
Honored Contributor

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

To use GNU make Install GNU make and add it at the beginning of the PATH variable.

Kalin Evtimov
Regular Advisor

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

I posted the types.h as attachment. 10x for helping.

Stephen Keane
Honored Contributor

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

Looks like you are going to need an additional -D_INCLUDE_POSIX_SOURCE in your makefile to make it work.
Kalin Evtimov
Regular Advisor

Re: Error compiling Perl 5.8.6 with gcc 3.4.3 on IA64

About gmake: It gave the same error

If I knew what -D_INCLUDE_POSIX_SOURCE is, I would also complete the make file. But my C knowledge..hm..
Is there any other general approach for getting Perl on my machine (but not as depot, because depots are precompiled with ANSI C and I don't have it and this makes some other installations impossible :( )