交叉编译用于树莓派的QT应用程序-无法打开共享对象文件



我希望能够在我的全尺寸桌面上使用QT Creator,以便能够开发和编译QT应用程序,并将它们部署到pi。

我遵循以下指南:http://qt-project.org/wiki/Create#QtonPi_App_SDK

我正在尝试编译hello-qtonpi项目。使用编译器和pi的工具链,我在编译过程中遇到了两个错误:

/opt/qtonpi/lib/gcc/armv5tel-qtonpi-linux-gnueabi/4.5.4/../../../../armv5tel-qtonpi-linux-gnueabi/bin/as: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
/opt/qtonpi/libexec/gcc/armv5tel-qtonpi-linux-gnueabi/4.5.4/cc1plus: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory

我检查了这两个库是否安装在我的pi上,以及pi中的rsynced/lib和/usr/lib到我的sys根文件夹中。

我尝试使用QT创建者添加库->系统库工具,并选择了例如libz.so,因为它没有显示so.1。它在.pro文件中添加了以下行:

unix:!macx:!symbian: LIBS += -lz

然而,它仍然没有消除这个错误。

我应该如何包含这些库,或者告诉编译器从哪里查找?

关于libz和libmpc的两条错误消息都与缺少的目标库无关,而是与主机部分有关

您的交叉编译工具链是作为动态工具链构建的,因此您需要在主机上拥有解析依赖关系的所有库。

由于libz.so.1非常常见,您可能正在运行64位主机,但您的工具链是为32位构建的。在这种情况下,您需要找到提供32位版本的libz.so.1和libmpc.so.2的包。

最新更新