Closed GuiRitter closed 5 years ago
Hi @GuiRitter ,
Thank you for the information.
This looks like a header file is missing from the system's libraries when v8 tries to compile for the host system. This header is <sys/cdefs.h>
.
Installing this header for development in your environment might solve this error.
Please let us know if you fix the issue.
Thanks for the response!
I searched around and installed libc6-dev
and libc6-dev-i386
to include <sys/cdefs.h>
. That fixed the error for this header on both systems.
It still complained about missing <bits/c++config.h>
, though.
I searched around and installed the following packages: libstdc++-6-pic libx32stdc++6 libx32stdc++-6-dev libstdc++-6-dev libstdc++6
. It said that libstdc++-6-pic libx32stdc++-6-dev
were already installed. That wasn't enough. Then I installed gcc-multilib g++-multilib
. That also caused the installation of lib32stdc++-6-dev
. I probably missed it the first time around when I used apt-cache search
.
That fixed it for WSL, but now I got another error (see the last 6 lines):
I don't know if the same will happen on the VM because I took the same steps and it's still running...
Should I close this issue and open another one, since it's a different error now?
Thanks in advance.
P.S.: I just realized I linked the wrong instructions page in the first post. I will fix it soon.
P.P.S.: Fixed.
P.P.P.S.: Building in the VM has passed the point where it failed in WSL. It might work.
The VM finished building without errors some time ago. I deployed an app and it seems to be working!
Only now I've found BUILDING.md and realized WSL is not supported. Since I don't really need it, I'll close this issue.
If you want me to run more tests on WSL, feel free to contact me and/or reopen the issue.
Thanks for the help!
sudo apt-get install gcc-multilib g++-multilib
Hi everyone.
In trying to solve this issue, I followed the README to build
libnode.so
with that line commented. However, the compilation fails in two different systems with similar messages.First I tried in Debian 9.7 via WSL in Windows 10 Pro v1809 compilation number 17763.557 x64. This is what I got:
Click to expand
``` guir@DESKTOP:~/nodejs-mobile$ ./tools/android_build.sh ~/android-ndk-r18b rm -f -r out/Makefile node node_g out/Release/node \ out/Release/node.exp rm -f -r node_modules rm -f test.tap # Next one is legacy remove this at some point rm -f -r test/tmp* rm -f -r test/.tmp* make test-addons-clean rm -f -r test/addons/??_*/ rm -f -r test/addons/*/build rm -f test/addons/.buildstamp test/addons/.docbuildstamp make test-addons-napi-clean rm -f -r test/addons-napi/*/build rm -f test/addons-napi/.buildstamp make bench-addons-clean rm -f -r benchmark/napi/function_call/build rm -f -r benchmark/napi/function_args/build HOST_OS=linux HOST_EXE= HOST_ARCH=x86_64 HOST_TAG=linux-x86_64 HOST_NUM_CPUS=4 BUILD_NUM_CPUS=8 Toolchain installed to /home/guir/nodejs-mobile/android-toolchain. WARNING: --openssl-no-asm will result in binaries that do not take advantage of modern CPU cryptographic instructions and will therefore be slower. Please refer to BUILDING.md creating icu_config.gypi { 'target_defaults': { 'cflags': [], 'default_configuration': 'Release', 'defines': [], 'include_dirs': [], 'libraries': []}, 'variables': { 'OS': 'android', 'arm_float_abi': 'default', 'arm_fpu': 'vfpv3', 'arm_thumb': 0, 'arm_version': '7', 'asan': 0, 'build_v8_with_gn': 'false', 'coverage': 'false', 'debug_nghttp2': 'false', 'enable_lto': 'false', 'enable_pgo_generate': 'false', 'enable_pgo_use': 'false', 'force_dynamic_crt': 1, 'host_arch': 'x64', 'icu_small': 'false', 'llvm_version': 0, 'node_byteorder': 'little', 'node_debug_lib': 'false', 'node_enable_d8': 'false', 'node_enable_v8_vtunejit': 'false', 'node_engine': 'v8', 'node_install_npm': 'true', 'node_module_version': 64, 'node_no_browser_globals': 'false', 'node_prefix': '/usr/local', 'node_release_urlbase': '', 'node_shared': 'true', 'node_shared_cares': 'false', 'node_shared_http_parser': 'false', 'node_shared_libuv': 'false', 'node_shared_nghttp2': 'false', 'node_shared_openssl': 'false', 'node_shared_zlib': 'false', 'node_tag': '', 'node_target_type': 'shared_library', 'node_use_bundled_v8': 'true', 'node_use_dtrace': 'false', 'node_use_etw': 'false', 'node_use_openssl': 'true', 'node_use_pch': 'false', 'node_use_perfctr': 'false', 'node_use_v8_platform': 'true', 'node_with_ltcg': 'false', 'node_without_node_options': 'false', 'openssl_fips': '', 'openssl_no_asm': 1, 'shlib_suffix': 'so', 'target_arch': 'arm', 'v8_enable_gdbjit': 0, 'v8_enable_i18n_support': 0, 'v8_enable_inspector': 0, 'v8_no_strict_aliasing': 1, 'v8_optimized_debug': 0, 'v8_promise_internal_field_count': 1, 'v8_random_seed': 0, 'v8_trace_maps': 0, 'v8_typed_array_max_size_in_heap': 0, 'v8_use_snapshot': 'false', 'want_separate_host_toolset': 0}} creating config.gypi creating config.status creating config.mk running: python tools/gyp_node.py --no-parallel -f make-android make -C out BUILDTYPE=Release V= CXX(host) /home/guir/nodejs-mobile/out/Release/obj.host/v8_libbase/deps/v8/src/base/bits.o CXX(host) /home/guir/nodejs-mobile/out/Release/obj.host/v8_libbase/deps/v8/src/base/cpu.o CXX(host) /home/guir/nodejs-mobile/out/Release/obj.host/v8_libbase/deps/v8/src/base/debug/stack_trace.o CXX(host) /home/guir/nodejs-mobile/out/Release/obj.host/v8_libbase/deps/v8/src/base/division-by-constant.o In file included from ../deps/v8/src/base/debug/stack_trace.h:13:0, from ../deps/v8/src/base/debug/stack_trace.cc:5: /usr/include/c++/6/iosfwd:38:28: fatal error: bits/c++config.h: No such file or directory #includeThen I tried in Debian 9.9 x64 in a virtual machine. This is what I got:
Click to expand
``` guir@debianVM:~/nodejs-mobile$ ./tools/android_build.sh ~/android-ndk-r18b rm -f -r out/Makefile node node_g out/Release/node \ out/Release/node.exp rm -f -r node_modules rm -f test.tap # Next one is legacy remove this at some point rm -f -r test/tmp* rm -f -r test/.tmp* make test-addons-clean rm -f -r test/addons/??_*/ rm -f -r test/addons/*/build rm -f test/addons/.buildstamp test/addons/.docbuildstamp make test-addons-napi-clean rm -f -r test/addons-napi/*/build rm -f test/addons-napi/.buildstamp make bench-addons-clean rm -f -r benchmark/napi/function_call/build rm -f -r benchmark/napi/function_args/build HOST_OS=linux HOST_EXE= HOST_ARCH=x86_64 HOST_TAG=linux-x86_64 HOST_NUM_CPUS=2 BUILD_NUM_CPUS=4 Toolchain installed to /home/guir/nodejs-mobile/android-toolchain. WARNING: --openssl-no-asm will result in binaries that do not take advantage of modern CPU cryptographic instructions and will therefore be slower. Please refer to BUILDING.md creating icu_config.gypi { 'target_defaults': { 'cflags': [], 'default_configuration': 'Release', 'defines': [], 'include_dirs': [], 'libraries': []}, 'variables': { 'OS': 'android', 'arm_float_abi': 'default', 'arm_fpu': 'vfpv3', 'arm_thumb': 0, 'arm_version': '7', 'asan': 0, 'build_v8_with_gn': 'false', 'coverage': 'false', 'debug_nghttp2': 'false', 'enable_lto': 'false', 'enable_pgo_generate': 'false', 'enable_pgo_use': 'false', 'force_dynamic_crt': 1, 'host_arch': 'x64', 'icu_small': 'false', 'llvm_version': 0, 'node_byteorder': 'little', 'node_debug_lib': 'false', 'node_enable_d8': 'false', 'node_enable_v8_vtunejit': 'false', 'node_engine': 'v8', 'node_install_npm': 'true', 'node_module_version': 64, 'node_no_browser_globals': 'false', 'node_prefix': '/usr/local', 'node_release_urlbase': '', 'node_shared': 'true', 'node_shared_cares': 'false', 'node_shared_http_parser': 'false', 'node_shared_libuv': 'false', 'node_shared_nghttp2': 'false', 'node_shared_openssl': 'false', 'node_shared_zlib': 'false', 'node_tag': '', 'node_target_type': 'shared_library', 'node_use_bundled_v8': 'true', 'node_use_dtrace': 'false', 'node_use_etw': 'false', 'node_use_openssl': 'true', 'node_use_pch': 'false', 'node_use_perfctr': 'false', 'node_use_v8_platform': 'true', 'node_with_ltcg': 'false', 'node_without_node_options': 'false', 'openssl_fips': '', 'openssl_no_asm': 1, 'shlib_suffix': 'so', 'target_arch': 'arm', 'v8_enable_gdbjit': 0, 'v8_enable_i18n_support': 0, 'v8_enable_inspector': 0, 'v8_no_strict_aliasing': 1, 'v8_optimized_debug': 0, 'v8_promise_internal_field_count': 1, 'v8_random_seed': 0, 'v8_trace_maps': 0, 'v8_typed_array_max_size_in_heap': 0, 'v8_use_snapshot': 'false', 'want_separate_host_toolset': 0}} creating config.gypi creating config.status creating config.mk running: python tools/gyp_node.py --no-parallel -f make-android make -C out BUILDTYPE=Release V= CXX(host) /home/guir/nodejs-mobile/out/Release/obj.host/v8_libbase/deps/v8/src/base/bits.o CXX(host) /home/guir/nodejs-mobile/out/Release/obj.host/v8_libbase/deps/v8/src/base/cpu.o In file included from ../deps/v8/include/v8config.h:16:0, from ../deps/v8/src/base/base-export.h:8, from ../deps/v8/src/base/cpu.h:16, from ../deps/v8/src/base/cpu.cc:5: /usr/include/features.h:364:25: fatal error: sys/cdefs.h: Arquivo ou diretório não encontrado # includeIn both systems, I ran
apt-get update
andapt-get upgrade
.I can work around not being able to compile this project. I just wanted to let you know this is happening.