[oe] openssl-native_1.0.0b.bb do_compile failed

Jan Paesmans jan.paesmans at gmail.com
Tue Dec 21 18:55:10 UTC 2010


On 12/20/10 22:29, Khem Raj wrote:
> On (20/12/10 19:45), Jan Paesmans wrote:
>> Hi,
>>
>> I have a problem with building the openssl-native package. Seems like
>> there is something wrong when liking one of the openssl engines and that
>> the file openssl.ld is needed.
>>
>> I'm building the release-2010.12 branch for the ion platform. My host is
>> a ubuntu 10.10
>>
>> | make[3]: Entering directory
>> `/home/janp/hudson/openembedded/tmp/work/x86_64-linux/openssl-native-1.0.0b-r13.1/openssl-1.0.0b/engines/ccgost'
>> | /usr/bin/ld: error: cannot open openssl.ld: No such file or directory
>> | /usr/bin/ld: fatal error: unable to parse version script file openssl.ld
>> | collect2: ld returned 1 exit status
>> | make[3]: *** [link_o.gnu] Error 1
>> | make[3]: Leaving directory
>> `/home/janp/hudson/openembedded/tmp/work/x86_64-linux/openssl-native-1.0.0b-r13.1/openssl-1.0.0b/engines/ccgost'
>> | make[2]: *** [lib] Error 2
>> | make[2]: Leaving directory
>> `/home/janp/hudson/openembedded/tmp/work/x86_64-linux/openssl-native-1.0.0b-r13.1/openssl-1.0.0b/engines/ccgost'
>> | make[1]: *** [subdirs] Error 1
>> | make[1]: Leaving directory
>> `/home/janp/hudson/openembedded/tmp/work/x86_64-linux/openssl-native-1.0.0b-r13.1/openssl-1.0.0b/engines'
>> | make: *** [build_engines] Error 1
>> | FATAL: oe_runmake failed
>> | ERROR: Function do_compile failed
>> NOTE: package openssl-native-1.0.0b-r13.1: task do_compile: Failed
>> ERROR: TaskFailed event exception, aborting
>> ERROR: Build of
>> /home/janp/hudson/openembedded/recipes/openssl/openssl-native_1.0.0b.bb
>> do_compile failed
>> ERROR: Task 13
>> (/home/janp/hudson/openembedded/recipes/openssl/openssl-native_1.0.0b.bb, do_compile)
>> failed with 256
>> ERROR:
>> '/home/janp/hudson/openembedded/recipes/openssl/openssl-native_1.0.0b.bb' failed
>> ERROR:
>> '/home/janp/hudson/openembedded/recipes/openssl/openssl-native_1.0.0b.bb' failed
>>
>>
>> I traced the culprit down to the following command using strace:
>> execve("/usr/bin/ld", ["/usr/bin/ld", "--build-id", "--eh-frame-hdr",
>> "-m", "elf_x86_64", "--hash-style=gnu", "-shared", "-o", "libgost.so",
>> "-z", "relro",
>> "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/crti.o",
>> "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/crtbeginS.o", "-L../..",
>> "-L/usr/lib/gcc/x86_64-linux-gnu/4.4.5",
>> "-L/usr/lib/gcc/x86_64-linux-gnu/4.4.5",
>> "-L/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib",
>> "-L/lib/../lib", "-L/usr/lib/../lib",
>> "-L/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../..",
>> "-L/usr/lib/x86_64-linux-gnu", "-lcrypto",
>> "--version-script=openssl.ld", "-Bsymbolic", "-soname=libgost.so",
>> "--whole-archive", "e_gost_err.o", "gost2001_keyx.o", "gost2001.o",
>> "gost89.o", "gost94_keyx.o", "gost_ameth.o", "gost_asn1.o",
>> "gost_crypt.o", "gost_ctl.o", "gost_eng.o", "gosthash.o",
>> "gost_keywrap.o", "gost_md.o", "gost_params.o", "gost_pmeth.o",
>> "gost_sign.o", "--no-whole-archive", "-lgcc", "--as-needed", "-lgcc_s",
>> "--no-as-needed", "-lc", "-lgcc", "--as-needed", "-lgcc_s",
>> "--no-as-needed", "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/crtendS.o",
>> "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../../lib/crtn.o"], [/* 102
>> vars */]) = 0
>>
>> Seems like this file openssl.ld is needed for the --version-script.
>> I did a simple test that involved removing the offending linker flag
>> from the makefile and that did the trick. However it seems to me that
>> this is a very hackish solution.
>>
>> Any further ideas?
> Well removing it may not be a good thing to do. Can you make sure
> that this ld script exist in the build tree
Well, seems that the files openssl.ld are created by the debian.patch.
Any idea why that is applied?

Regards,

Jan




More information about the Openembedded-devel mailing list