Open joaopaulob opened 8 years ago
Maybe meta-nodejs is completely missing from your bblayers.conf? I don't see in your config...
I agree with @gizero
Looks like meta-nodejs is not included.
Hi,
My bblayers.conf:
`LCONF_VERSION = "6"
BBPATH = "${TOPDIR}" BBFILES ?= ""
BBLAYERS ?= " \ ${TOPDIR}/../meta \ ${TOPDIR}/../meta-yocto \ ${TOPDIR}/../meta-openembedded/meta-oe \ ${TOPDIR}/../meta-openembedded/meta-python \ ${TOPDIR}/../meta-openembedded/meta-networking \ ${TOPDIR}/../meta-openembedded/meta-gnome \ ${TOPDIR}/../meta-openembedded/meta-ruby \ ${TOPDIR}/../meta-yocto-bsp \ ${TOPDIR}/../meta-toradex \ ${TOPDIR}/../meta-fsl-arm \ ${TOPDIR}/../meta-fsl-arm-extra \ ${TOPDIR}/../meta-browser \ ${TOPDIR}/../meta-mytapp-chromium \ " BBLAYERS_NON_REMOVABLE ?= " \ ${TOPDIR}/../meta \ ${TOPDIR}/../meta-yocto \ " EXTRALAYERS +=" \ ${TOPDIR}/../meta-nodejs \ ${TOPDIR}/../meta-nodejs-contrib \ "`
$ bitbake -s | grep nodejs
NOTE: preferred version 6.8.1 of nodejs not available
NOTE: versions of nodejs available: 0.12.7
nodejs :0.12.7-r0
nodejs-native :0.12.7-r0
nodejs4-native :0.4.12-r0
`
$ cd meta-nodejs; git branch -av master c84b420 2016-10-14, Version 6.8.1 (Current) remotes/origin/HEAD -> origin/master remotes/origin/jethro aa4dfb9 2016-10-14, Version 6.8.1 (Current) remotes/origin/krogoth c84b420 2016-10-14, Version 6.8.1 (Current) remotes/origin/master c84b420 2016-10-14, Version 6.8.1 (Current)
`
The version 0.12.7 is compiled.
Regards
Found the issue. The layer should not be on EXTRALAYERS section.
Now I am getting the following compiling error:
| arm-poky-linux-gnueabi-gcc -march=armv7-a -marm -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a7 --sysroot=/home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/sysroots/colibri-imx7 '-D_REENTRANT' '-DPURIFY' '-DOPENSSL_NO_COMP' '-DOPENSSL_NO_SSL3' '-DOPENSSL_NO_HEARTBEATS' '-DOPENSSL_NO_HW' '-DENGINESDIR="/dev/null"' '-DTERMIOS' '-DOPENSSLDIR="/etc/ssl"' '-DL_ENDIAN' '-DAES_ASM' '-DCPUID_ASM' '-DOPENSSL_BN_ASM_MONT' '-DOPENSSL_CPUID_OBJ' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DGHASH_ASM' '-DDSO_DLFCN' '-DHAVE_DLFCN_H' -I../deps/openssl -I../deps/openssl/openssl -I../deps/openssl/openssl/crypto -I../deps/openssl/openssl/crypto/asn1 -I../deps/openssl/openssl/crypto/evp -I../deps/openssl/openssl/crypto/md2 -I../deps/openssl/openssl/crypto/modes -I../deps/openssl/openssl/crypto/store -I../deps/openssl/openssl/include -Wno-missing-field-initializers -pthread -Wall -Wextra -Wno-unused-parameter -O3 -fno-omit-frame-pointer -MMD -MF /home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/node-v6.8.1/out/Release/.deps//home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/node-v6.8.1/out/Release/obj.target/openssl/deps/openssl/openssl/crypto/armcap.o.d.raw -O2 -pipe -g -feliminate-unused-debug-types -c -o /home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/node-v6.8.1/out/Release/obj.target/openssl/deps/openssl/openssl/crypto/armcap.o ../deps/openssl/openssl/crypto/armcap.c | arm-poky-linux-gnueabi-gcc -march=armv7-a -marm -mthumb-interwork -mfloat-abi=hard -mfpu=neon -mtune=cortex-a7 --sysroot=/home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/sysroots/colibri-imx7 '-D_REENTRANT' '-DPURIFY' '-DOPENSSL_NO_COMP' '-DOPENSSL_NO_SSL3' '-DOPENSSL_NO_HEARTBEATS' '-DOPENSSL_NO_HW' '-DENGINESDIR="/dev/null"' '-DTERMIOS' '-DOPENSSLDIR="/etc/ssl"' '-DL_ENDIAN' '-DAES_ASM' '-DCPUID_ASM' '-DOPENSSL_BN_ASM_MONT' '-DOPENSSL_CPUID_OBJ' '-DSHA1_ASM' '-DSHA256_ASM' '-DSHA512_ASM' '-DGHASH_ASM' '-DDSO_DLFCN' '-DHAVE_DLFCN_H' -I../deps/openssl -I../deps/openssl/openssl -I../deps/openssl/openssl/crypto -I../deps/openssl/openssl/crypto/asn1 -I../deps/openssl/openssl/crypto/evp -I../deps/openssl/openssl/crypto/md2 -I../deps/openssl/openssl/crypto/modes -I../deps/openssl/openssl/crypto/store -I../deps/openssl/openssl/include -Wno-missing-field-initializers -pthread -Wall -Wextra -Wno-unused-parameter -O3 -fno-omit-frame-pointer -MMD -MF /home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/node-v6.8.1/out/Release/.deps//home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/node-v6.8.1/out/Release/obj.target/openssl/deps/openssl/openssl/crypto/armv4cpuid.o.d.raw -O2 -pipe -g -feliminate-unused-debug-types -c -o /home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/node-v6.8.1/out/Release/obj.target/openssl/deps/openssl/openssl/crypto/armv4cpuid.o ../deps/openssl/openssl/crypto/armv4cpuid.S
| make[1]: execvp: printf: Argument list too long
| make[1]: *\ [/home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/node-v6.8.1/out/Release/obj.target/deps/openssl/libopenssl.a] Error 127 | make[1]: Leaving directory `/home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/node-v6.8.1/out'
| make: *\ [node] Error 2 | ERROR: oe_runmake failed | ERROR: Function failed: do_compile (log file is located at /home/joao/projetos/toradex/poky_imx7/poky-toradex/build/tmp/work/cortexa7hf-vfp-neon-poky-linux-gnueabi/nodejs/6.8.1-r1.7/temp/log.do_compile.3691) ERROR: Task 290 (/home/joao/projetos/toradex/poky_imx7/poky-toradex/build/../meta-nodejs/recipes-devtools/nodejs/nodejs_6.8.1.bb, do_compile) failed with exit code '1
Best regards
Take a look at #9... seems related. I also experienced a similar issue when building from unusual build paths and suspected this was related to the length of the paths
@joaopaulob
If bundled openssl compilation fails you can build Node.js with use shared openssl.
This can be enabled with PACKAGECONFIG
:
http://www.yoctoproject.org/docs/2.1/ref-manual/ref-manual.html#var-PACKAGECONFIG
For example, in your local.conf
PACKAGECONFIG_append_pn-nodejs = " openssl"
or in nodejs_%.bbappend
:
PACKAGECONFIG_append = " openssl"
using PACKAGECONFIG_append = " openssl"
helps you because it shortens the command used to link openssl, but it does not touch the core of the issue.
I give you my example. I keep my yocto related stuff in one directory, where I have 2 other dirs: build
and layers
. This should be self-explainatory.
If my main path is:
/home/myusername12/yocto-builds/2016-11-02
- the build fails with execvp: printf: Argument list too long
error, but if i change it to:/home/myusername12/2016-11-02
- the build succeeds (username changed, but directory name length preserved).In my opinion this issue should be forwarded to the developers responsible for creating nodejs.
There has already been a patch for this issue in nodejs 0.8.18 but I tried applying it manually (normal patching failed), but even that did not help.
There is already an issue for it in here: https://github.com/nodejs/node/issues/9137
Hi,
I'm trying to compile the version v6.8.1 but I'm getting the following warning:
My local.conf:
PREFERRED_VERSION_nodejs = "6.8.1"
Build configuration:
BB_VERSION = "1.28.0" BUILD_SYS = "x86_64-linux" NATIVELSBSTRING = "Ubuntu-14.04" TARGET_SYS = "arm-poky-linux-gnueabi" MACHINE = "colibri-imx7" DISTRO = "poky" DISTRO_VERSION = "2.0.2" TUNE_FEATURES = "arm armv7a vfp thumb neon callconvention-hard cortexa7" TARGET_FPU = "vfp-neon" meta meta-yocto = "jethro:37eb21b2b1d5977a028a448e52551607fae99bf7" meta-oe meta-python meta-networking meta-gnome meta-ruby = "jethro:8ab04afbffb4bc5184cfe0655049de6f44269990" meta-yocto-bsp = "jethro:37eb21b2b1d5977a028a448e52551607fae99bf7" meta-toradex = "V2.6:485643678b2d39d37b1cc9d1aa2200bb934b08de" meta-fsl-arm = "jethro:417f669e4dede244a81e11aa6d8b60c4e333e589" meta-fsl-arm-extra = "master:fddc5aef6712b9ea87095772ad51a8d41be9ad67"
Am i missing anything? I'm using the latest master.
Best regards