我有一个 Raspberry Pi 3。我已经在我的Raspberry Pi 3 : GCC 4.9.2
( Raspbian 4.9.2-10
) 和必要的运行时库上安装了它的本机工具链。我已经下载gcc-linaro-6.3.1-2017.05-x86_64_armv8l-linux-gnueabihf : gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05)
并安装在我的桌面上,甚至下载了必要的运行时并将它们复制到我的Raspberry Pi 3
. /usr/lib/armv8l-linux-gnueabihf/
我已经在和中复制了必要的运行时库/lib/armv8l-linux-gnueabihf/ folders
。
即使我使用 Linario GCC 4.9.2 而不是 Linario 6.3.1,我也面临同样的问题
我收到以下错误:
./gatewaycomminication:/usr/lib/arm-linux-gnueabihf/libstdc++.so.6:找不到版本 CXXABI_1.3.9(./gatewaycomminication 需要)
./gatewaycomminication:/usr/lib/arm-linux-gnueabihf/libstdc++.so.6:未找到版本 GLIBCXX_3.4.21'(需要
./gatewaycomminication) ./gatewaycomminication: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: 未找到版本“GLIBCXX_3.4.22”(./gatewaycomminication 需要)
如果我启用静态构建,程序会正常运行。我尝试了以下可能的解决方案(但似乎都没有):
-Wl,-rpath,-Wl,-rpath,/usr/lib/armv8l-linux-gnueabihf
export LD_LIBRARY_PATH=/usr/lib/armv8l-linux-gnueabihf:$LD_LIBRARY_PATH
-Wl,-rpath,/usr/lib/armv8l-linux-gnueabihf -L/usr/lib/armv8l-linux-gnueabihf/libstdc++.so.6.0.22
LD_PRELOAD=/usr/lib/armv8l-linux-gnueabihf/libstdc++.so.6.0.22 gatewayCommunication
请建议我如何让我的程序在Linario GCC 6.3
开始Raspberry Pi 3
使用共享库模型时编译。