[oe] nodejs-native and OpenSSL

Paul Eggleton paul.eggleton at linux.intel.com
Tue Sep 25 21:40:56 UTC 2018


Hi folks

I've recently been trying to build nodejs-native with oe-core/meta-oe master 
on Ubuntu 14.04, and unfortunately it's failing for me:

--------- snip ---------
/home/paul/poky/poky/build-minnow/tmp/work/x86_64-linux/nodejs-native/8.11.4-r0/node-v8.11.4/out/Release/obj.target/node_lib/src/node_crypto.o: In function `node::crypto::RandomBytesWork(uv_work_s*)':
node_crypto.cc:(.text+0x31): undefined reference to `RAND_poll'
node_crypto.cc:(.text+0x3a): undefined reference to `RAND_status'
node_crypto.cc:(.text+0x52): undefined reference to `RAND_bytes'
node_crypto.cc:(.text+0x89): undefined reference to `ERR_get_error'
/home/paul/poky/poky/build-minnow/tmp/work/x86_64-linux/nodejs-native/8.11.4-r0/node-v8.11.4/out/Release/obj.target/node_lib/src/node_crypto.o: In function `node::crypto::DiffieHellman::GetPrime(v8::FunctionCallbackInfo<v8::Value> const&)::{lambda(dh_st const*)#1}::_FUN(dh_st const*)':
node_crypto.cc:(.text+0x121): undefined reference to `DH_get0_pqg'
/home/paul/poky/poky/build-minnow/tmp/work/x86_64-linux/nodejs-native/8.11.4-r0/node-v8.11.4/out/Release/obj.target/node_lib/src/node_crypto.o: In function `node::crypto::DiffieHellman::GetGenerator(v8::FunctionCallbackInfo<v8::Value> const&)::{lambda(dh_st const*)#1}::_FUN(dh_st const*)':
node_crypto.cc:(.text+0x141): undefined reference to `DH_get0_pqg'
/home/paul/poky/poky/build-minnow/tmp/work/x86_64-linux/nodejs-native/8.11.4-r0/node-v8.11.4/out/Release/obj.target/node_lib/src/node_crypto.o: In function `node::crypto::SecureContext::TicketCompatibilityCallback(ssl_st*, unsigned char*, unsigned char*, evp_cipher_ctx_st*, hmac_ctx_st*, int)':
node_crypto.cc:(.text+0x172): undefined reference to `SSL_get_SSL_CTX'
node_crypto.cc:(.text+0x17c): undefined reference to `SSL_CTX_get_ex_data'
node_crypto.cc:(.text+0x1c1): undefined reference to `EVP_aes_128_cbc'
--------- snip ---------

At first, since I haven't seen reports of this elsewhere I thought maybe it had
something to do with the host OpenSSL version being 1.0, but adding -H to
CFLAGS/CXXFLAGS and -Wl,--trace to LDFLAGS seems to suggest that it's
using both the headers and libraries for OpenSSL from the sysroot as it 
should.

Has anyone else seen this? Any suggestions? (other than perhaps "update 
your host distro and try again")?

Cheers,
Paul


-- 

Paul Eggleton
Intel Open Source Technology Centre





More information about the Openembedded-devel mailing list