我想将我用Qt编写的项目发布到Ubuntu/Linux用户。如果他们试图执行他们收到此错误信息生成发行版本,因为他们还没有安装的Qt:Qt项目发布ubuntu - 加载共享库时出错:libQt5Widgets.so.5
错误而载入共享库:libQt5Widgets.so.5: 无法打开共享对象文件:没有这样的文件或目录
有没有办法添加所有的库如libQt5Widgets.so.5
到可执行的,就像Windows与qt.conf
,在那里你可以指定Plugins
文件夹下的文件夹?
我想将我用Qt编写的项目发布到Ubuntu/Linux用户。如果他们试图执行他们收到此错误信息生成发行版本,因为他们还没有安装的Qt:Qt项目发布ubuntu - 加载共享库时出错:libQt5Widgets.so.5
错误而载入共享库:libQt5Widgets.so.5: 无法打开共享对象文件:没有这样的文件或目录
有没有办法添加所有的库如libQt5Widgets.so.5
到可执行的,就像Windows与qt.conf
,在那里你可以指定Plugins
文件夹下的文件夹?
使用Ubuntu的包管理系统对项目进行打包可能是最简单的。当您的项目安装时,Qt依赖关系将由包管理器自动安装。只要Ubuntu的软件包存储库中有可用的Qt 5版本,那就是最好的办法了。它会为你节省很多的痛苦。
所以你的意思是'sudo apt-get install libqt5'? – Niklas
是的,您应该将自己的项目作为apt包提供,具体取决于libqt5。然后,当您的软件包安装时,应该自动拉入libqt5。 –
一种解决方案可能是:
export LD_LIBRARY_PATH=/path/to/dir/with/libs:$LD_LIBRARY_PATH
但一个妥善的解决办法是安装Qt库系统和/或打包的应用程序的Ubuntu(你的情况)。
这不能自动完成,对吧?因为它取决于用户放置程序的位置。 – Niklas
当然,您可以提供一个脚本来启动您的应用程序,其中库路径是您当前的目录。 – kikeenrique
当我看到这个错误时,我最近通过SDK管理器更新了Android工具。
重新安装要修复的SDK工具。这是我的机器的工作原理。
不清楚“将库添加到库所在的文件夹”的含义。你的意思是你的应用程序驻留在哪里?然后你提到'就像在qt.conf下的windows下一样'。我想你想要将Qt库复制到一个文件夹,然后告诉应用程序库驻留的位置? –
@KurtPattyn'我想你想将Qt库复制到一个文件夹中,然后告诉应用程序库驻留在哪里?“这正是我想要的。 – Niklas
你是怎么解决这个搭档的? – Michael