linux qt 打包程序 报错 libQt5Widgets.so:对‘std::pmr::monotonic_buffer_resource::~monotonic_buffer_resource()@GLIBCXX_3.4.28’未定义的引用
时间: 2024-01-21 07:05:02 浏览: 430
这个错误通常是因为程序在编译时没有链接正确的库文件导致的。建议您按照以下步骤解决问题:
1. 确认您的系统已经安装了 Qt5 库。如果您使用的是 Ubuntu 系统,可以使用以下命令安装:
```
sudo apt-get install qt5-default
```
2. 检查您的程序的编译配置是否正确。在 Qt Creator 中,您需要设置正确的构建套件并确保链接了正确的库文件。
3. 如果您仍然遇到问题,可以尝试手动链接 libstdc++ 库。在您的项目的.pro 文件中添加以下行:
```
LIBS += -lstdc++
```
4. 如果仍然出现问题,可以尝试升级您的 GCC 版本。GLIBCXX_3.4.28 是 GCC 5.0 引入的一个新特性,如果您的 GCC 版本太低,可能无法链接该特性。
希望这些步骤可以帮助您解决问题。如果问题仍然存在,请提供更多的详细信息,以便我能够更好地帮助您。
相关问题
linux qt 打包程序报错,/home/lxy/anaconda3/lib/libQt5Widgets.so:对‘std::pmr::monotonic_buffer_resource::~monotonic_buffer_resource()@GLIBCXX_3.4.28’未定义的引用 /home/lxy/anaconda3/lib/libQt5Core.so:对‘std::__exception_ptr::exception_ptr::_M_release()@CXXABI_1.3.13’未定义的引用 /home/lxy/anaconda3/lib/libQt5Widgets.so:对‘vtable for std::pmr::monotonic_buffer_resource@GLIBCXX_3.4.28’未定义的引用 /home/lxy/anaconda3/lib/libQt5Widgets.so:对‘std::pmr::get_default_resource()@GLIBCXX_3.4.26’未定义的引用 /home/lxy/anaconda3/lib/libQt5Widgets.so:对‘std::__throw_bad_array_new_length()@GLIBCXX_3.4.29’未定义的引用 /home/lxy/anaconda3/lib/libQt5Core.so:对‘std::__exception_ptr::exception_ptr::_M_addref()@CXXABI_1.3.13’未定义的引用 collect2: error: ld returned 1 exit status
这个错误通常是由于链接器无法找到所需的库文件或库文件版本不兼容导致的。根据错误信息,似乎是缺少对 libstdc++.so.6 库的链接。你可以尝试添加以下参数来链接该库:
```
-L/usr/lib64 -lstdc++
```
如果你的系统是 32 位的,则将 -L/usr/lib64 替换为 -L/usr/lib。如果还是无法解决问题,你可以尝试更新 libstdc++ 库,或者重新编译 Qt 库。
在拷贝了qt库文件并设置了环境变量的情况下,在没有qt的电脑上运行时出现下面错误./ImageTool: /home/zhanghb/Desktop/62/lib/libQt5Core.so.5: version Qt_5.9' not found (required by ./ImageTool) ./ImageTool: /home/zhanghb/Desktop/62/lib/libQt5Core.so.5: version Qt_5' not found (required by ./ImageTool) ./ImageTool: /home/zhanghb/Desktop/62/lib/libQt5Gui.so.5: version Qt_5' not found (required by ./ImageTool) ./ImageTool: /home/zhanghb/Desktop/62/lib/libQt5Gui.so.5: version Qt_5_PRIVATE_API' not found (required by /home/zhanghb/Desktop/62/lib/libQt5Widgets.so.5) ./ImageTool: /home/zhanghb/Desktop/62/lib/libQt5Gui.so.5: version Qt_5' not found (required by /home/zhanghb/Desktop/62/lib/libQt5Widgets.so.5) ./ImageTool: /home/zhanghb/Desktop/62/lib/libQt5Core.so.5: version Qt_5.9' not found (required by /home/zhanghb/Desktop/62/lib/libQt5Widgets.so.5) ./ImageTool: /home/zhanghb/Desktop/62/lib/libQt5Core.so.5: version Qt_5_PRIVATE_API' not found (required by /home/zhanghb/Desktop/62/lib/libQt5Widgets.so.5) ./ImageTool: /home/zhanghb/Desktop/62/lib/libQt5Core.so.5: version Qt_5' not found (required by /home/zhanghb/Desktop/62/lib/libQt5Widgets.so.5)
这个错误提示与你拷贝的 Qt 库文件版本不匹配有关。请检查你拷贝的 Qt 库文件版本是否与程序所需的版本相匹配。如果你使用的是 Qt 5.9 版本,那么需要拷贝 Qt 5.9 的库文件;如果你使用的是其他版本,那么需要拷贝相应版本的库文件。另外,确保你拷贝的 Qt 库文件包含了程序所需的所有库文件,以免出现其他依赖项错误。
阅读全文