[Devel] Re: perl module on solaris

Bogdan-Andrei Iancu bogdan at voice-system.ro
Thu Dec 14 15:33:25 CET 2006


Hi Bastian,

I guess the <perl.h> file is correctly located and included.

perl -MExtUtils::Embed -e ccopts ->
 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 
-I/usr/perl5/5.6.1/lib/sun4-solaris-64int/CORE

I took a look into the perl.h file and I didn't find any 
PERL_EXIT_DESTRUCT_END, but only PERL_EXIT_EXPECTED.

so, it looks like this flag does not exists in this perl lib :(
    SunOS sparc-solaris1 5.9 Generic_112233-03 sun4u sparc SUNW,Ultra-60

regards,
bogdan


Bastian Friedrich wrote:

>Hi,
>
>On Wednesday 13 December 2006 21:02, Bogdan-Andrei Iancu wrote:
>[...]
>  
>
>>"perl.c", line 323: undefined symbol: PERL_EXIT_DESTRUCT_END
>>cc: acomp failed for perl.c
>>make[1]: *** [perl.o] Error 2
>>
>>compiling on solaris fails because the flag PERL_EXIT_DESTRUCT_END is
>>missing...any clue?
>>    
>>
>
>unfortunately, I was not able to reproduce that.
>
>On one SunOS machine I have access to compiling OpenSER itself was not 
>possible (I suspect a broken setup of that machine :-/), on another one 
>OpenSER built fine including the perl module. This machine is set up with 
>gcc, though.
>
>PERL_EXIT_DESTRUCT_END is defined in Perl's perl.h, so I see the following 
>possibilities for the error:
>a) perl.h is not correctly included. Unfortunately, there's kind of a name
>   clash between the OpenSER module perl.h and Perl's perl.h...
>b) "perl -MExtUtils::Embed -e ccopts" should return the necessary include path
>   for Perl's include files. Does that work on your system?
>c) The Perl version you use on that system does not #define that constant. Can
>   you check that?
>
>I tend to think that the problem is (a). Is there possibly any difference in 
>the semantics how #include "..." and #include <...> are handled between gcc 
>and sun cc? The idea is that #include <perl.h> includes the OpenSER header 
>file instead of the Perl header...
>
>Can you tell me more about the setup of your Sun? I'd try to find a similarly 
>set up machine then.
>
>A quick fix would be 
>#ifndef PERL_EXIT_DESTRUCT_END
>#define PERL_EXIT_DESTRUCT_END 0x02
>#endif
>somewhere in the headers... But I suspect other problems arise during 
>compilation, then :(
>
>Regards,
>   Bastian
>
>  
>




More information about the Devel mailing list