gpt4 book ai didi

linux - 将 Qt 从 Linux 集成/移植到嵌入式 Linux

转载 作者:太空宇宙 更新时间:2023-11-04 04:27:39 30 4
gpt4 key购买 nike

我正在尝试将我的 Qt 代码从 Linux 移植到嵌入式 Linux。现在我在网上查看了这个关于如何部署到嵌入式 linux/linux 的文档: http://doc.qt.io/archives/qt-4.7/deployment-x11.html

所以现在我使用共享库方法,因为我认为这会给我最大的灵 active ,而且似乎使用最新的 QtSDK 我无法静态部署我的应用程序。我遵循说明中提到的所有步骤,并且没有插件。因此,当我完成这些步骤时,我将所有代码和依赖库移植到某个目录:/tmp/MyFolder...。我使用 ldd -v Application.exe 确定需要移植的库。所以现在的问题是,当我将这些库移植到嵌入式 Linux 机器上时,我注意到其中一些库已经存在于/usr/lib 和/lib 等目录中。因此,当我运行代码时,我编写一个 shell 脚本来修改 LD_LIBRARY_PATH 环境变量,以检查这些目录和我自己的目录中是否有适当的库。现在,当我在嵌入式 Linux 机器上运行代码时,出现错误:

加载共享库时出错:/tmp/ftproot/RenderingEngine/./libm.so.6:ELF 文件操作系统 ABI 无效。

我已尝试通过谷歌搜索该错误,但我仍然不知道该错误意味着什么以及如何解决它。问题是库 libm.so.6 位于/usr/lib 目录和我的自定义目录中。但是,我设置 LD_LIBRARY_PATH 的方式首先检查我的自定义目录。有人可以帮我解决这个问题吗?

最佳答案

ELF 错误表明您链接到的库的二进制格式与您的系统不兼容。您应该只链接到为目标操作系统(在本例中为嵌入式 Linux 的任何版本)编译的库。

尝试重新编译代码并链接到系统上已存在的库(即在 /usr/lib 中)。

关于linux - 将 Qt 从 Linux 集成/移植到嵌入式 Linux,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7237831/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com