AnsweredAssumed Answered

Linking error, relocations from elf64-powerpc -> elf32-powerpc not supported

Question asked by mike99 on Apr 24, 2013

I have a kernel module that will build if built against a 32bit 5020 powerpc kernel (3.0.6), switching the .config to 64bits, the out of tree module fails to compile unless -m64 is added. With -m64 added it compiles but then fails at link with the following linker error.

This code has been in use a long time on numerous systems but the move to 64bits is new.

The error message does not really help localize the issue, does anyone have any ideas how to get some more information out of the build to help debug this ?

 

mkdir -p /workspace/sw/mholmes/EP5020A/trunk/rte/api/nca/linux_kernel/pci/.tmp_versions ; rm -f /workspace/sw/mholmes/EP5020A/trunk/rte/api/nca/linux_kernel/pci/.tmp_versions/*

make -f scripts/Makefile.build obj=/workspace/sw/mholmes/EP5020A/trunk/rte/api/nca/linux_kernel/pci

  /tools/AGRtools/ep/ep5020a/freescale-2010.09/bin/powerpc-linux-gnu-gcc -DNCP_LINUX -DNCP_BIG_ENDIAN -DNCP_SAL_HOSTMEM_NVM -DPROC_EP5020 -fno-strict-aliasing -mno-mfcrf -mcpu=e5500   -m64 -Wp,-MD,/workspace/sw/mholmes/EP5020A/trunk/rte/api/nca/linux_kernel/pci/.ncp_dev.o.d  -nostdinc -isystem /tools/AGRtools/ep/ep5020a/freescale-2010.09/bin/../lib/gcc/powerpc-linux-gnu/4.5.1/include -I/workspace/sw/mholmes/EP5020A/linux/build.ep5020a.acpx1/ep5020a_kernel_3.0.6/arch/powerpc/include -Iarch/powerpc/include/generated -Iinclude  -include include/generated/autoconf.h -D__KERNEL__ -Iarch/powerpc -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Wno-format-security -fno-delete-null-pointer-checks -O2 -msoft-float -pipe -Iarch/powerpc -mminimal-toc -mtraceback=no -mcall-aixdesc -mtune=power4 -mno-altivec -mno-spe -mspe=no -funit-at-a-time -fno-dwarf2-cfi-asm -mno-string -Wa,-me500 -mno-mfcrf -Wframe-larger-than=1024 -fno-stack-protector -fomit-frame-pointer -g -Wdeclaration-after-statement -Wno-pointer-sign -fno-strict-overflow -fconserve-stack -DCC_HAVE_ASM_GOTO -DNCP_LINUX -DNCP_BIG_ENDIAN -DNCP_SAL_HOSTMEM_NVM -DPROC_EP5020 -D_FILE_OFFSET_BITS=64 -DFORCE_POLLING_MODE -DNCP_LINUX -DNCP_DEV_PCI  -DMODULE  -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(ncp_dev)"  -D"KBUILD_MODNAME=KBUILD_STR(ncp)" -c -o /workspace/sw/mholmes/EP5020A/trunk/rte/api/nca/linux_kernel/pci/.tmp_ncp_dev.o /workspace/sw/mholmes/EP5020A/trunk/rte/api/nca/linux_kernel/pci/ncp_dev.c

/tools/AGRtools/ep/ep5020a/freescale-2010.09/bin/powerpc-linux-gnu-ld: Relocatable linking with relocations from format elf64-powerpc (/workspace/sw/mholmes/EP5020A/trunk/rte/api/nca/linux_kernel/pci/.tmp_ncp_dev.o) to format elf32-powerpc (/workspace/sw/mholmes/EP5020A/trunk/rte/api/nca/linux_kernel/pci/ncp_dev.o) is not supported


Outcomes