Hi,
I am trying to cross-compile Axis2C and wsf-staff for powerpc using an x86_64 Linux Box.
Step 1: Cross-compilation of Axis2C is successful and I am getting the desired libraries and binaries of powerpc.
Step 2: Cross-compilation of staff shows error " staff_codegen : cannot execute binary file" (during make).
I think while cross-compiling for PowerPC arch, it tries to run this staff_codegen on my x86_64 Linux Box which actually contains machine instruction of PowerPC arch.(Reason for this error according to me)
Also i cant make this staff on my power machine.
So can u please suggest a way or provide the compiled powerpc package of wsf-staff.
make starts with this
make -C staff make
make[1]: Entering directory `/home/arvikumj/webservices/devel/staff-read-only/staff'
make -C core/utils make OS= CC=ppcnf-mcp7-gcc CXX=ppcnf-mcp7-g++ PLATFORM=ppc-ibm-linux-gnu-cross HOSTBUILD=1 MAKEFILE_ENV_INCLUDED= STAFF_HOME=/home/arvikumj/webservices/staff AXIS2C_HOME=/home/arvikumj/webservices/axis2c EXEC_EXT=
and I am getting error as after some lines of verbose output
make -C components/Login make
make[2]: Entering directory `/home/arvikumj/webservices/devel/staff-read-only/staff/components/Login'
cd src/ && STAFF_HOME=/home/arvikumj/webservices/devel/staff-read-only/deploy/ppc-ibm-linux-gnu-cross//home/arvikumj/webservices/staff/ LD_LIBRARY_PATH=/home/arvikumj/webservices/devel/staff-read-only/deploy/ppc-ibm-linux-gnu-cross//home/arvikumj/webservices/staff/lib:/home/db2lin95/sqllib/lib32 /home/arvikumj/webservices/devel/staff-read-only/deploy/ppc-ibm-linux-gnu-cross//home/arvikumj/webservices/staff/bin/staff_codegen -u -tcomponent Login.h
/bin/sh: /home/arvikumj/webservices/devel/staff-read-only/deploy/ppc-ibm-linux-gnu-cross//home/arvikumj/webservices/staff/bin/staff_codegen: cannot execute binary file
make[2]: *** [src/ComponentImpl.h] Error 126
make[2]: Leaving directory `/home/arvikumj/webservices/devel/staff-read-only/staff/components/Login'
make[1]: *** [components/Login.dep] Error 2
make[1]: Leaving directory `/home/arvikumj/webservices/devel/staff-read-only/staff'
make: *** [staff.dep] Error 2
HI Sir,
I tried this and reverted the Makefile.env to original Makefile.env
CC=ppcnf-mcp7-gcc CXX=ppcnf-mcp7-g++ make
it shows this in verbose output
make -C staff make
make[1]: Entering directory `/home/arvikumj/webservices/devel/staff-read-only/staff'
make -C core/utils make OS= CC=gcc CXX=g++ PLATFORM=x86_64-redhat-linux-cross HOSTBUILD=1 MAKEFILE_ENV_INCLUDED= STAFF_HOME=/home/arvikumj/webservices/staff AXIS2C_HOME=/home/arvikumj/webservices/axis2c EXEC_EXT=
and Now the error is
/usr/bin/ld: skipping incompatible /home/arvikumj/webservices/devel/staff-read-only/deploy/x86_64-redhat-linux-cross//home/arvikumj/webservices/staff/lib/libstaffutils.so when searching for -lstaffutils
/usr/bin/ld: skipping incompatible /home/arvikumj/webservices/devel/staff-read-only/deploy/x86_64-redhat-linux-cross//home/arvikumj/webservices/staff/lib/libstaffutils.so when searching for -lstaffutils
/usr/bin/ld: cannot find -lstaffutils
collect2: ld returned 1 exit status
make[2]: *** [/home/arvikumj/webservices/devel/staff-read-only/deploy/x86_64-redhat-linux-cross//home/arvikumj/webservices/staff/lib/libstaffcomponent.so.1.99.2] Error 1
make[2]: Leaving directory `/home/arvikumj/webservices/devel/staff-read-only/staff/core/component'
make[1]: *** [core/component.hostdep] Error 2
make[1]: Leaving directory `/home/arvikumj/webservices/devel/staff-read-only/staff'
make: *** [staff.dep] Error 2
The reason behind substituting in Makefile.env these as CCHOST and CXXHOST
is that if I substitute there, then only it takes CC and CXX as ppcnf
make -C staff make
make[1]: Entering directory `/home/arvikumj/webservices/devel/staff-read-only/staff'
make -C core/utils make OS= CC=ppcnf-mcp7-gcc CXX=ppcnf-mcp7-g++ PLATFORM=ppc-ibm-linux-gnu-cross HOSTBUILD=1 MAKEFILE_ENV_INCLUDED= STAFF_HOME=/home/arvikumj/webservices/staff AXIS2C_HOME=/home/arvikumj/webservices/axis2c EXEC_EXT=