[OE-core] nss-native fails to build with older binutils on host

Khem Raj raj.khem at gmail.com
Wed Aug 7 18:24:40 UTC 2013


On Aug 6, 2013, at 11:34 PM, wenzong fan <wenzong.fan at windriver.com> wrote:

> Hi folks,
> 
> I'm looking for a proper solution to fix this build failure:
> 
> Package name: nss-native
> Host binutils version: 2.17.50.0.6-20.el5_8.3
> Host type: CentOS 5.9
> 
> Error message:
> --------------
> gcc -o Linux3.4_x86_64_glibc_PTH_64_OPT.OBJ/Linux_SINGLE_SHLIB/intel-gcm.o -O2 -D_POSIX_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE -fPIC -DLINUX2_1  -Wall -Werror-implicit-function-declaration -Wno-switch -pipe -DLINUX -Dlinux -DHAVE_STRERROR -DXP_UNIX -DSHLIB_SUFFIX=\"so\" -DSHLIB_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -UDEBUG -DNDEBUG -D_REENTRANT -DNSS_ENABLE_ECC -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DNSS_USE_64 -DFREEBL_NO_DEPEND -DNSS_X86_OR_X64 -DNSS_X64 -DNSS_BEVAND_ARCFOUR -DMPI_AMD64 -DMP_ASSEMBLY_MULTIPLY -DNSS_USE_COMBA -DMP_CHAR_STORE_SLOW -DMP_IS_LITTLE_ENDIAN -DUSE_HW_AES -DMP_API_COMPATIBLE -I/home/nxadm/nx/yow-blade14.1/builds-2013-08-07-005810/qemumips_world_oe/bitbake_build/tmp/sysroots/x86_64-linux/usr/include -I../../../dist/Linux3.4_x86_64_glibc_PTH_64_OPT.OBJ/include -I../../../dist/public/nss -I../../../dist/private/nss -Impi -Iecl  -m64 -fPIC -Wa,--noexecstack -c intel-gcm.s
> intel-gcm.s: Assembler messages:
> intel-gcm.s:39: Error: no such instruction: `vmovdqu (Tp),T'
> intel-gcm.s:40: Error: no such instruction: `vpshufb .Lbswap_mask(%rip),T,T'
> intel-gcm.s:41: Error: no such instruction: `vpxor TMP0,TMP0,TMP0'
> intel-gcm.s:44: Error: no such instruction: `vpinsrq $0,Mlen,TMP0,TMP0'
> intel-gcm.s:45: Error: no such instruction: `vpinsrq $1,Alen,TMP0,TMP0'
> ......
> 
> A similar bug at:
> 
> https://bugzilla.mozilla.org/show_bug.cgi?id=838401
> 
> That shows it caused by older host binutils (as|objdump).
> 
> I think this could be fixed by getting nss-native depends on binutils-native, but binutils-native somehow only install some libraries and remove all the binaries.


Its unnecessary dependency and will penalize users with newer hosts, There is binutils220 package available for centos
5.x you should install that on your build machine and be done with it.


> 
> Could I just override the do_install_class-native() for binutils? Or provide a second recipe like 'binutils-tools-native' to produce the full binutils?


No, we should be very careful about adding more packages to build to appease one old distribution. It gets harder and harder to keep supporting old distributions forever for building latest OE core. At one point you have to make a call
and stop using them.

> 
> Any advices/suggestions will be welcome.
> 
> 
> Thanks
> Wenzong
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core




More information about the Openembedded-core mailing list