我无法在我的Raspberry Pi 1 B +上运行交叉编译的构建。我一直得到的错误是:
ImportError: /usr/lib/arm-linux-gnueabihf/libstdc++.so.6: version 'CXXABI_1.3.11'
未找到。我尝试了多个具有不同设置的编译器,但我一直得到同样的错误。在我的Pi上将LD_LIBRARY_PATH
更改为libstdc ++的位置也不起作用。今天我得到了一个突破性的发现,在争论之后,制作过程输出“将在GCC 7.1中改变”。我不是百分之百确定这是导致错误的原因,但是GCC 7.1附带CXXABI
版本1.3.11,所以我怀疑它是原因。有没有人知道如何阻止这种情况发生?我正在使用Ubuntu 17.10构建虚拟机。我正在使用sh autogen.sh; ./configure --host=arm-linux-gnueabihf; make -j8
由于
编辑:我自己找到了解决方案,它是:export CXX=/path/to/toolchain/arm-linux-gnueabihf-g++
答案 0 :(得分:0)
您的跨GCC随附的libstdc++.so
版本与您系统上安装的版本不兼容。您可以运行经过修改的LD_LIBRARY_PATH
(或-Wl,-rpath
)编译的程序,使用交叉编译器的libstdc++.so
指向目录,也可以降级交叉编译器以匹配您的发行版。