> /home/liuyh/workspace/linux/tools/arm-linux-gnueabi-5.4.0/usr/local/arm/5.4.0/usr/bin/../lib/gcc/arm-none-linux-gnueabi/5.4.0/../../../../arm-none-linux-gnueabi/bin/ld: failed to merge target specific data of file verifyspec.o > collect2: 错误: ld 返回 1 > make: *** [Makefile:68:verifyspec] 错误 1
时间: 2023-07-17 10:54:51 浏览: 238
这个错误是由链接器 `ld` 引起的,它在链接时无法合并 `verifyspec.o` 文件的目标特定数据,导致链接失败。
可能原因是 `verifyspec.o` 文件与正在链接的程序使用的工具链不兼容,或者链接器版本过低。你可以尝试更新链接器或者使用与 `verifyspec.o` 文件编译时使用的工具链版本相同的工具链重新编译程序,然后进行链接。
相关问题
/home/liuyh/workspace/linux/tools/arm-linux-gnueabi-5.4.0/usr/local/arm/5.4.0/usr/bin/../libexec/gcc/arm-none-linux-gnueabi/5.4.0/cc1: error while loading shared libraries: libmpfr.so.4: cannot open shared object file: No such file or directory
这个错误提示是由于缺少 `libmpfr.so.4` 库文件导致的。您可以通过以下步骤解决:
1. 打开终端并输入以下命令以安装缺失的依赖项:
```
sudo apt-get install libmpfr-dev
```
2. 安装完成后,您可以运行以下命令以查找 `libmpfr.so.4` 库文件:
```
sudo find / -name libmpfr.so.4
```
如果找到该文件,则可以将其复制到 `/usr/lib` 目录下:
```
sudo cp /path/to/libmpfr.so.4 /usr/lib
```
如果找不到该文件,则可能需要从源代码编译安装 `mpfr` 库。您可以在 `http://www.mpfr.org/` 上找到相关信息和下载链接。
3. 最后,请确保您的环境变量中已经正确设置了库文件路径。您可以运行以下命令查看环境变量:
```
echo $LD_LIBRARY_PATH
```
如果没有设置,则可以通过以下方式设置:
```
export LD_LIBRARY_PATH=/usr/lib
```
如果您需要在每次启动终端时自动设置该变量,请将上述命令添加到 `~/.bashrc` 文件中。
希望这可以帮助您解决这个问题。
Command line: -prefix /home/liuyh/workspace/qt5.14.2-arm -opensource -confirm-license -release -strip -shared -xplatform linux-arm-gnueabi-g++ -optimized-qmake -c++std c++11 --rpath=no -pch -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcanvas3d -skip qtconnectivity -skip qtdatavis3d -skip qtdoc -skip qtgamepad -skip qtlocation -skip qtmacextras -skip qtnetworkauth -skip qtpurchasing -skip qtremoteobjects -skip qtscript -skip qtscxml -skip qtsensors -skip qtspeech -skip qtsvg -skip qttools -skip qttranslations -skip qtwayland -skip qtwebengine -skip qtwebview -skip qtwinextras -skip qtx11extras -skip qtxmlpatterns -make libs -make examples -nomake tools -nomake tests -gui -widgets -dbus-runtime --glib=no --iconv=no --pcre=qt --zlib=qt -no-openssl --freetype=qt --harfbuzz=qt -no-opengl -linuxfb --xcb=no -tslib --libpng=qt --libjpeg=qt --sqlite=qt -plugin-sql-sqlite -I/opt/tslib/include -L/opt/tslib/lib -recheck-all executing config test machineTuple + arm-linux-gnueabi-g++ -dumpmachine > sh: 1: arm-linux-gnueabi-g++: not found test config.qtbase.tests.machineTuple FAILED executing config test verifyspec + cd /home/liuyh/workspace/QT5.14.2/qt-everywhere-src-5.14.2/config.tests/verifyspec && /home/liuyh/workspace/QT5.14.2/qt-everywhere-src-5.14.2/qtbase/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CONFIG += shared warn_off console single_arch" 'QMAKE_LIBDIR += /opt/tslib/lib' 'INCLUDEPATH += /opt/tslib/include' -early "CONFIG += cross_compile" /home/liuyh/workspace/QT5.14.2/qt-everywhere-src-5.14.2/qtbase/config.tests/verifyspec + cd /home/liuyh/workspace/QT5.14.2/qt-everywhere-src-5.14.2/config.tests/verifyspec && MAKEFLAGS= /usr/bin/make clean && MAKEFLAGS= /usr/bin/make > rm -f verifyspec.o > rm -f *~ core *.core > arm-linux-gnueabi-g++ -c -O2 -march=armv7-a -mtune=cortex-a7 -mfpu=neon -mfloat-abi=hard -O2 -march=armv7-a -mtune=cortex-a7 -mfpu=neon -mfloat-abi=hard -pipe -O2 -w -fPIC -I/home/liuyh/workspace/QT5.14.2/qt-everywhere-src-5.14.2/qtbase/config.tests/verifyspec -I. -I/opt/tslib/include -I/home/liuyh/workspace/QT5.14.2/qt-everywhere-src-5.14.2/qtbase/mkspecs/linux-arm-gnueabi-g++ -o verifyspec.o /home/liuyh/workspace/QT5.14.2/qt-everywhere-src-5.14.2/qtbase/config.tests/verifyspec/verifyspec.cpp > make:arm-linux-gnueabi-g++:命令未找到 > make: *** [Makefile:172:verifyspec.o] 错误 127
这个错误可能是由于缺少相关的编译器或者库文件,或者是由于目标平台设置不正确导致的。你需要检查你的编译环境和目标平台设置,确保它们都是正确的。另外,根据错误提示,arm-linux-gnueabi-g++命令未找到,可能是缺少相关工具链导致的。你需要安装适合的交叉编译工具链来解决这个问题。同时,你也可以尝试使用其他目标平台进行编译,看是否可以解决这个问题。
阅读全文