编译armv7上的armv7的nodejs 10.36

我尝试编译以在chroot(armel wheezy)环境中的embedded式linux上编译node.js。 该系统具有所有必需的工具版本。

  • Python 2.7.3
  • GCC 4.6
  • GNU Make 3.81

cpuinfo中:

处理器:ARMv7处理器rev 10(v7l)处理器:0 BogoMIPS:790.52

处理器:1 BogoMIPS:790.52

处理器:2 BogoMIPS:790.52

处理器:3 BogoMIPS:790.52

特性:swp half thumb fastmult vfp edsp neon vfpv3 CPU执行者:0x41 CPU架构:7 CPU变体:0x2 CPU部分:0xc09 CPU修订版本:10

经过多次尝试和研究在网上我可以编译它,但我在链接时收到错误。

我做了以下几点:

export CFLAGS='-march=armv7-a' export CXXFLGAS='-march=armv7-a' ./configure --dest-cpu=armv7 --without-snapshot --without-ssl --dest-os=linux 

我改变了选项,但没有任何效果。 使用–dest-cpu = arm引起编译错误(不支持BLX)。 因此我使用了armv7,这是这个系统上正确的CPU。 我编译并链接后收到以下错误:

/root/node-v0.10.36/out/Release/obj.target/deps/v8/tools/gyp/libv8_base.a(platform-posix.o):在函数v8::internal::init_fast_log_function()': platform-posix.cc:(.text+0x598): undefined reference to v8 :: internal :: CreateTranscendentalFunction(v8 :: internal :: TranscendentalCache :: Type)的v8::internal::init_fast_log_function()': platform-posix.cc:(.text+0x598): undefined reference to '/root/node-v0.10.36/out/Release/obj。 target / deps / v8 / tools / gyp / libv8_base.a(platform-posix.o):函数v8::internal::init_fast_sqrt_function()': platform-posix.cc:(.text+0x5e4): undefined reference to v8 :: internal :: CreateSqrtFunction()'collect2:ld返回1退出状态make [1]: * [/root/node-v0.10.36/out/Release/node]错误1 make [1]:离开目录`/ root / node-v0.10.36 / out'make:* [node]错误2

我不知道,我可以做什么来链接文件。 我怎样才能完成链接过程?

我find了一个解决scheme。

我添加了参数-mthumb-interwork并将其configuration为不带任何参数。 现在编译并安装。

export CFLAGS =' – march = armv7-a -mthumb-interwork'export CXXFLAGS =' – march = armv7-a -mthumb-interwork'

Interesting Posts