我想确保将任何必需的库添加到开发的Android应用程序中。因此,我试图将其正确定义到LD_LIBRARY_PATH。命令ldd用于检查我的Qt应用程序需要哪些库。
当我在Ubuntu上运行ldd时,它应该给我MyApp所需的lib列表。但是,这是我到目前为止所得到的:
$ cd MyAppProjFolder
$ ldd MyApp | grep libQt
ldd: ./MyApp: not regular file
$ file MyApp
MyApp: directory
$ cd Debug
$ ldd MyApp | grep libQt
./MyApp: No such file or directory
$ cd android-build
$ ldd MyApp | grep libQt
./MyApp: No such file or directory
$ cd bin
$ ldd MyApp | grep libQt
./MyApp: No such file or directory
要查找可执行文件的位置,请运行命令:
$ find /home/user/MyAppProjFolder -name MyApp
/MyAppProjFolder/.../bin/classes/org/qtproject/example/MyApp
$ ldd MyApp | grep libQt
./MyApp: No such file or directory
我在这里缺少什么?生成的可执行文件与定义的项目/应用程序的名称不同?
答案 0 :(得分:3)
根据评论中的对话,您似乎有以下错误:
1)您正尝试在目录或不存在的文件上运行ldd
。
2)您似乎在目标二进制文件上从主机运行ldd
。它不一定相同。
我的建议是找到您的可执行文件,并确保在其上运行正确的ldd
。
编辑:因为您在初始帖子之后将问题的要点修改到一定程度,所以回复:
我在这里缺少什么?
如何在同一个文件中使用find和ldd。
生成的可执行文件与定义的项目/应用程序的名称不同?
这是/你/在你的构建系统中定义的东西,所以我们无法知道,特别是如果你没有粘贴相关的代码。