如果这不是正确的地方,我深表歉意,但在处理同样的错误 2 天后,我希望有人能给出答案。
我正在尝试使用使用zmq的节点模块zerorpc,但是,在尝试运行一个小示例时,出现以下错误:
Error: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by myFilepath/node_modules/zmq/build/Release/zmq.node)
我正在使用 AWS(亚马逊网络服务)提供的亚马逊 linux 实例。执行后sudo yum update
,可用的最新版本是 GLIBCXX_3.4.19。我使用以下命令进行了检查:
strings /usr/lib64/libstdc++.so.6.19 | grep GLIBCXX
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
最初,我使用 时遇到此错误brew install zmq
,因此我将其卸载并尝试按照zeromq 站点的说明安装 zmq :
git clone https://github.com/zeromq/libzmq
./autogen.sh && ./configure && make -j 4
make check && make install && sudo ldconfig
我对这些指令的唯一区别是我单独运行它们而不是使用&&
,并且我在每个指令前面添加了 sudo。我也在export LD_LIBRARY_PATH=/usr/local/lib
运行这些之前执行了。
然后我做到了npm install zerorpc --save
。当然,我收到了同样的错误,所以我卸载了 zerorpc,做了一个make clean
,然后重新开始了所有步骤,除了这次我将配置指令更改为sudo ./configure CXX=/usr/bin/g++ CC=/usr/bin/gcc
。再一次,我收到了同样的错误。
希望有人有建议。我真的不想尝试从源代码编译更新的 gcc 版本,因为我知道这将是新一轮的头痛。