http://www.perlmonks.org?node_id=694623

friedo has asked for the wisdom of the Perl Monks concerning the following question:

Greetings,

I'm having some trouble getting PAR::Packer built on my Fedora Core 9 box. Here's the output from make:

gcc -c -D_REENTRANT -D_GNU_SOURCE -DDEBUGGING -fno-strict-aliasing -pi +pe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I +/usr/include/gdbm -I/usr/lib/perl5/5.10.0/i386-linux-thread-multi/CO +RE main.c In file included from main.c:5: perlxsi.c: In function ‘xs_init’: perlxsi.c:30: warning: passing argument 3 of ‘Perl_newXS’ from incompa +tible pointer type In file included from main.c:58: internals.c: In function ‘par_xs_init’: internals.c:123: error: too many arguments to function ‘xs_init’ make[1]: *** [main.o] Error 1 make[1]: Leaving directory `/root/.cpan/build/PAR-Packer-0.980-j8sYsf/ +myldr' make: *** [subdirs] Error 2 SMUELLER/PAR-Packer-0.980.tar.gz /usr/bin/make -- NOT OK

I've got the latest perl-devel RPM installed, so all my headers and stuff should be up-to-date. Unfortunately, this problem has run up directly against my C compiler n00biness, so I don't know where to begin.

Thanks in advance for any help.

Replies are listed 'Best First'.
Re: Building PAR::Packer on Fedora9 i386
by Anonymous Monk on Jul 11, 2008 at 16:08 UTC
    what you need to do is change the xs_init prototype from _((void)) to something like (s) without the leading _. I came across the very same problem with my fedora9 box. Made the change, compiled, then pp still wouldn'y work. You may very need to then install module build from CPAN. Then you'll be right. edit the pp script to disinclude use pp; (and the next line), either way @ISA will complain. PS- by no means am I C programmer (as much as I wish I had the time to play) or competant in any way.
      Remove the argument of xs_init at line 123 in the internals.c and do the "perl Makefile.PL" Johny Koothur Ittiara
        Thanks Johny Koothur Ittiara, mine was line 122 !!
Re: Building PAR::Packer on Fedora9 i386
by Anonymous Monk on Jun 29, 2008 at 19:19 UTC
    You google it :)