Tag: gcc

编译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 […]

Gulp / Node:加载共享库时出错:无法在静态TLS块中分配内存

尝试运行吞咽和获得这个输出 $ gulp node: error while loading shared libraries: cannot allocate memory in static TLS block 从我发现,这似乎与gcc或g ++有关,不知道它是如何与节点或吞咽。 无论哪种方式,我似乎无法运行吞咽了。 还应该提一下,今天刚刚出现。 昨天运行良好。 编辑:似乎是所有的节点命令。 试着运行npm -v来获取版本号,它有相同的输出。 与节点-v相同 运行CentOS 6.9

编译内置c ++ 17的本地节点插件在npm安装期间失败

我有使用c + + 17function,特别是“shared_mutex”nodejs的本机插件。 当我打电话给npm安装下载和编译插件时,我得到一个错误: Linux机器安装了GCC 6.0。 我的Binding.gyp使用以下configuration来捕获ostypes并相应地添加标志: 'conditions': [ ['OS=="linux"', { 'CXXFLAGS': [ '-std=c++1z' ]}], **我也试过'-std = c ++ 17','-std = c ++ 1z'。 我错过了什么? 更新:1.更新Ubuntu 16.04到GCC 16.04,并将其设置为默认值。 2.看来,当我尝试编译它manualy使用node-gyp重build“CXXFLAGS =' – std = c ++ 17'”它的工作原理和只带来一个错误:“shared_,utex命名空间std不会命名一个typesstd :: shared_mutex文件互斥“(最后一个错误)

C ++从'char *'无效转换为'const unsigned char *'

我在NodeJS中编写我的项目,但我不得不使用C共享库。 正因为如此,我不得不使用Node.js插件。 调用C ++代码完美地工作,我也能够加载自定义库,并成功地调用两个C函数:一个给我的库的版本号,另一个方法基于JS提供的数据生成一个密钥。 我遇到的问题与生成的密钥有关。 我必须使用encrypt和decrypt方法。 这是我用来存储密钥的variables: unsigned char generated_key[256]; 这是生成密钥的function: extern "C" { #ifdef WIN32 VE_EXPORT int CALLBACK generate_key #else int generate_key #endif (char *variable_msg, /*!< variable seed */ char *shared_seed, /*!< shared seed */ unsigned char *generated_key, /*!< generated key */ unsigned int key_size); /*!< key size */ } 这是一个使用键的function: extern "C" { […]

节点构build失败

我在Mac OS X 10.6上 – 我试图通过自制程序安装节点,它是一个非描述性的错误信息失败。 我决定克隆节点repo并在目录中build立它。 运行./configure命令之后,输出是: Checking for program g++ or c++ : /usr/bin/g++ Checking for program cpp : /usr/bin/cpp Checking for program ar : /usr/bin/ar Checking for program ranlib : /usr/bin/ranlib Checking for g++ : ok Checking for program gcc or cc : /usr/bin/gcc Checking for gcc : ok Checking for library […]

pm2'cluster'模式无法加载LD_LIBRARY_PATH

我正在安装npm包ccap来生成CAPTCHA 。 因为它是一个c + +添加和需要gcc 4.8 + ,我安装时遇到了一些问题。 我编译了gcc 4.9.4,并在我的开发机器上成功安装了ccap。 但是,当我尝试启动我的应用程序(不含pm2)时,遇到了这个问题。 Error: /usr/lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by /home/jwb/ccapDemo/node_modules/ccap/build/Release/hcaptha.node) at Error (native) at Object.Module._extensions..node (module.js:597:18) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) at Function._load (/home/jwb/ccapDemo/node_modules/pmx/lib/transaction.js:47:40) at Module.require (module.js:497:17) at require (internal/module.js:20:19) at Object.<anonymous> (/home/jwb/ccapDemo/node_modules/ccap/lib/hcap.js:4:13) at Module._compile (module.js:570:32) 我search了很多,并通过在.bash_profile中设置以下linux环境variables来修复它。 export LD_LIBRARY_PATH=/home/jwb/gcc-4.9.4/lib64:$LD_LIBRARY_PATH 现在看起来像工作,但是当我尝试在PM2集群模式下开始我的演示时,也出现了同样的问题。 我也试过pm2叉模式 […]

nodejs cookbook:node:/usr/lib64/libstdc++.so.6:未find版本'GLIBCXX_3.4.15'(节点需要)

我正在通过食谱https://github.com/redguide/nodejs安装nodejs 并具有以下属性: { "nodejs": { "version": "0.11.16", "engine": "node", "install_method": "binary", "binary": { "checksum": "a1bdc19c779d13b772ac22feead14f592c637ce866d86a59ef225a3273dd7c33" }, "npm_packages": [ { "name": "pm2" } ] } } 它安装“OK”,但在运行node或npm时发生错误。 $node node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by node) $ npm /usr/local/bin/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /usr/local/bin/node) 这是在nodejs的食谱错误或我应该通过其他措施处理? 对于两天前的厨师我是新手 – 只是试图正确地导航水域。

如何根据具有相对位置的共享库构buildnodejs C ++插件

我正在尝试使用node-gyp构buildnode.js C ++,但无法弄清楚如何指定-Wl,-rpath,$ORIGIN以便在从节点加载时可以find相同的共享对象库目录作为addon.node 。 我已经尝试设置我的binding.gyp像这样: "libraries": [ "-L../../install_release_x64/", "-llibppp" ], "ldflags": [ "-Wl,-rpath,'$ORIGIN'" ], "cflags_cc": [ "-fexceptions", "-fPIC", "-Wno-unknown-pragmas" ] 但是当我运行$ readelf -d addon.node的结果是这样的: Dynamic section at offset 0x7d10 contains 29 entries: Tag Type Name/Value 0x0000000000000001 (NEEDED) Shared library: [liblibppp.so] 0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.6] 0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] […]

无法在Ubuntu 10.04上构buildNode.js

当我尝试在我的Ubuntu 10.04服务器上构buildNode.js时,它失败,出现以下错误: /etc/node/deps/v8/src/hydrogen.cc: In member function 'v8::internal::HInstruction* v8::internal::HGraphBuilder::BuildBinaryOperation(v8::internal::BinaryOperation*, v8::internal::HValue*, v8::internal::HValue*)': /etc/node/deps/v8/src/hydrogen.cc:4912: internal compiler error: Segmentation fault build设时,我跑了下面的命令: git clone –depth 1 git://github.com/joyent/node.git cd node mkdir ~/local ./configure –prefix=$HOME/local/node make 我也尝试编译它没有设置 – 前缀,它的工作。 但是,它没有工作来安装它。 运行make install时出现这个错误: Unable to install the file 'deps/uv/c-ares/ares_build.h' (not found in dir:///etc/node) 我已经尝试0.4.8和0.4.0这个,但我得到了他们两个分段错误。 这里是一些更多的信息: 操作系统:Ubuntu 10.04 Arch:x64 节点版本:0.4.8或0.4.0 GCC版本:4.4.3(Ubuntu 4.4.3-4ubuntu5) 有任何想法吗?