KB Article #73262
Error while configuring the GIKCMDPL API on a linux 64 bit architecture
When trying to setup GIKCMDPL on a linux 64 bit the following errors are seen :
perl Makefile.PL
make test
rm -f blib/arch/auto/GIKCMDPL/GIKCMDPL.so
gcc -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic ./GIKCMDPL.o -o blib/arch/auto/GIKCMDPL/GIKCMDPL.so \
-L/opt/transfert/Gateway/obj/ -lperlpel -lpadm -lpbase -lpctl -lppur -lpdsp -lptrans -lvadm -lvdsp -lpdconf -ldconf -lpeltools -ltftools -lsectools -loptools -lapivfd -lapisup -lapilogp -lbase -lipc -lsys -lsdstools -lcrypt5 -lexitclnt -lexituser -lsadm -lsdsp \
/usr/bin/ld: skipping incompatible /opt/transfert/Gateway/obj//libperlpel.so when searching for -lperlpel
/usr/bin/ld: cannot find -lperlpel
collect2: ld returned 1 exit status
make: *** [blib/arch/auto/GIKCMDPL/GIKCMDPL.so] Error 1
[minju@lminju1 gikcmdpl]$ make install
rm -f blib/arch/auto/GIKCMDPL/GIKCMDPL.so
gcc -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic ./GIKCMDPL.o -o blib/arch/auto/GIKCMDPL/GIKCMDPL.so \
-L/opt/transfert/Gateway/obj/ -lperlpel -lpadm -lpbase -lpctl -lppur -lpdsp -lptrans -lvadm -lvdsp -lpdconf -ldconf -lpeltools -ltftools -lsectools -loptools -lapivfd -lapisup -lapilogp -lbase -lipc -lsys -lsdstools -lcrypt5 -lexitclnt -lexituser -lsadm -lsdsp \
/usr/bin/ld: skipping incompatible /opt/transfert/Gateway/obj//libperlpel.so when searching for -lperlpel
/usr/bin/ld: cannot find -lperlpel
collect2: ld returned 1 exit status
make: *** [blib/arch/auto/GIKCMDPL/GIKCMDPL.so] Error 1
If a perl 64 bit version is used then the resulting Makefile is a specific 64 bit Makefile. But the Gateway libraries are 32 bit.
Trying to link the 64 bit version with 32 bit dynamic libraries will fail with the above error.
Resolution
Please use a 32 bit version of perl on the 64 bit architecture or use a different 32 bit machine.