Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Compiling GD on Solaris 11

by jfinn (Initiate)
on Dec 10, 2012 at 16:20 UTC ( #1008135=perlquestion: print w/ replies, xml ) Need Help??
jfinn has asked for the wisdom of the Perl Monks concerning the following question:

I'm having issues compiling GD on a Solaris 11 server. I've tried both with the Sun compiler and gcc. Below is the output from each attempt with each compiler. Any help will be greatly appreciated.

Native compiler
root@solaris11:~/.cpan/build/GD-2.46-5lwh43# perl Makefile.PL Notice: Type perl Makefile.PL -h for command-line option summary. Configuring for libgd version 2.0.35. Checking for stray libgd header files...cc: Warning: Option -nt-search +-dirs passed to ld, if ld is invoked, ignored otherwise usage: cc [ options ] files. Use 'cc -flags' for details none found. Included Features: GD_XPM GD_JPEG GD_FONTCONFIG GD_FREETYPE G +D_PNG GD_GIF GD_GIFANIM GD_OPENPOLYGON GD_UNCLOSEDPOLY GD_ANIMGIF GD_ +FTCIRCLE VERSION_33 GD library used from: /usr Note (probably harmless): No library found for -liconv Writing Makefile for GD Writing MYMETA.yml and MYMETA.json root@solaris11:~/.cpan/build/GD-2.46-5lwh43# make /usr/bin/perl GD/Image.pm.PLS GD/Image.pm Extracting Image.pm (with variable substitutions) Skip blib/lib/GD/Polyline.pm (unchanged) Skip blib/lib/qd.pl (unchanged) Skip blib/lib/GD/Image.pm (unchanged) Skip blib/lib/GD.pm (unchanged) Skip blib/lib/GD/Simple.pm (unchanged) Skip blib/lib/GD/Polygon.pm (unchanged) Skip blib/lib/GD/Group.pm (unchanged) cc -c -I/usr/include/gd2 -Wformat=0 -xO4 -DVERSION=\"2.46\" -DXS +_VERSION=\"2.46\" -KPIC "-I/usr/perl5/5.12/lib/i86pc-solaris-64int/CO +RE" -DHAVE_JPEG -DHAVE_FT -DHAVE_XPM -DHAVE_GIF -DHAVE_PNG -DHAVE_AN +IMGIF -DVERSION_33 -DHAVE_UNCLOSEDPOLY -DHAVE_FONTCONFIG -DHAVE_FTCIR +CLE GD.c cc: -W option with unknown program format=0 *** Error code 1 make: Fatal error: Command failed for target `GD.o'
Via GCC compiler

root@solaris11:~/.cpan/build/GD-2.46-5lwh43# perlgcc Makefile.PL Notice: Type perl Makefile.PL -h for command-line option summary. Configuring for libgd version 2.0.35. Checking for stray libgd header files...none found. Included Features: GD_XPM GD_JPEG GD_FONTCONFIG GD_FREETYPE G +D_PNG GD_GIF GD_GIFANIM GD_OPENPOLYGON GD_UNCLOSEDPOLY GD_ANIMGIF GD_ +FTCIRCLE VERSION_33 GD library used from: /usr Have /usr/perl5/5.12/lib/Sun/Solaris/PerlGcc Want /usr/perl5/5.12/lib/i86pc-solaris-64int Your perl and your Config.pm seem to have different ideas about the architecture they are running on. Perl thinks: [PerlGcc] Config says: [i86pc-solaris-64int] This may or may not cause problems. Please check your installation of +perl if you have problems building this extension. Note (probably harmless): No library found for -liconv Writing Makefile for GD Writing MYMETA.yml and MYMETA.json root@solaris11:~/.cpan/build/GD-2.46-5lwh43# make /usr/perl5/5.12/bin/perl GD/Image.pm.PLS GD/Image.pm Extracting Image.pm (with variable substitutions) Skip blib/lib/GD/Polyline.pm (unchanged) Skip blib/lib/qd.pl (unchanged) Skip blib/lib/GD/Image.pm (unchanged) Skip blib/lib/GD.pm (unchanged) Skip blib/lib/GD/Simple.pm (unchanged) Skip blib/lib/GD/Polygon.pm (unchanged) Skip blib/lib/GD/Group.pm (unchanged) gcc -c -I/usr/include/gd2 -Wformat=0 -xO4 -DVERSION=\"2.46\" -DX +S_VERSION=\"2.46\" -KPIC "-I/usr/perl5/5.12/lib/i86pc-solaris-64int/C +ORE" -DHAVE_JPEG -DHAVE_FT -DHAVE_XPM -DHAVE_GIF -DHAVE_PNG -DHAVE_A +NIMGIF -DVERSION_33 -DHAVE_UNCLOSEDPOLY -DHAVE_FONTCONFIG -DHAVE_FTCI +RCLE GD.c gcc: unrecognized option '-KPIC' gcc: language O4 not recognized gcc: language O4 not recognized gcc: GD.c: linker input file unused because linking not done Running Mkbootstrap for GD () chmod 644 GD.bs rm -f blib/arch/auto/GD/GD.so LD_RUN_PATH="/usr/lib" cc -G -L/usr/lib -L/usr/ccs/lib -L/lib -L/usr +/gnu/lib GD.o -o blib/arch/auto/GD/GD.so \ -L/usr/lib -L/usr/lib/amd64 -L/usr/lib -lXpm -lX11 -ljpeg -lfontcon +fig -lfreetype -lpng -lz -lm -lgd \ ld: fatal: file GD.o: open failed: No such file or directory ld: fatal: file processing errors. No output written to blib/arch/auto +/GD/GD.so *** Error code 2 make: Fatal error: Command failed for target `blib/arch/auto/GD/GD.so'

Comment on Compiling GD on Solaris 11
Select or Download Code
Re: Compiling GD on Solaris 11
by Anonymous Monk on Dec 10, 2012 at 23:47 UTC
    You're switching compilers and you didn't make realclean? Not likely to work

    also perlgcc doesn't appear to have been updated in a decade -- I hear installing a new perl using gcc ( say in /usr/local/opt or some such) is easier to work with

      Thanks for the "make realclean" tip, I was just removing the directory and re-downloading it between each attempt to compile. So I downloaded and compiled the latest version of perl and I was able to get GD compiled. Now I'm having a very similar error trying to compile SNMP
      root@solaris11:~/.cpan/build/SNMP-5.0401-n2C6m8# make test cp SNMP.pm blib/lib/SNMP.pm AutoSplitting blib/lib/SNMP.pm (blib/lib/auto/SNMP) /usr/local/bin/perl /usr/local/lib/perl5/5.16.2/ExtUtils/xsubpp -nopro +totypes -typemap /usr/local/lib/perl5/5.16.2/ExtUtils/typemap -typema +p typemap SNMP.xs > SNMP.xsc && mv SNMP.xsc SNMP.c gcc -c -DNETSNMP_ENABLE_IPV6 -m32 -xO4 -xchip=pentium -xregs=no%fra +meptr -mt -xc99=all -Dsolaris2=solaris2 -DFALSE_SHARING_ALIGN=64 -I. +-I/usr/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPERL_USE_ +SAFE_PUTENV -DPERL_USE_SAFE_PUTENV -O -DVERSION=\"5.0401\" -DXS_V +ERSION=\"5.0401\" -KPIC "-I/usr/local/lib/perl5/5.16.2/i86pc-solaris/ +CORE" SNMP.c gcc: unrecognized option '-KPIC' gcc: language c99=all not recognized gcc: language c99=all not recognized gcc: SNMP.c: linker input file unused because linking not done Running Mkbootstrap for SNMP () chmod 644 SNMP.bs rm -f blib/arch/auto/SNMP/SNMP.so LD_RUN_PATH="/usr/lib" gcc -G -L/usr/lib -L/usr/ccs/lib -L/opt/solari +sstudio12.3/prod/lib -L/lib -L/usr/gnu/lib SNMP.o -o blib/arch/auto/ +SNMP/SNMP.so \ -L/usr/lib -lnetsnmp -lgen -lelf -lnsl -lsocket -lkstat \ gcc: SNMP.o: No such file or directory *** Error code 1 make: Fatal error: Command failed for target `blib/arch/auto/SNMP/SNMP +.so'
      This is the last module I need compiled...help would be greatly appreciated.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1008135]
Front-paged by Arunbear
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (6)
As of 2014-11-27 14:59 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (186 votes), past polls