无法运行Qt应用程序:找不到版本“Qt_5”

4

我使用的是Ubuntu 16.04 LTS操作系统。 我的问题是,我无法运行一个我可以编译的Qt5应用程序。

当我尝试运行它时,会出现以下情况:

/home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif: /usr/lib/x86_64-linux-gnu/libQt5OpenGL.so.5: version `Qt_5' not found (required by /home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif)
/home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5' not found (required by /home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif)
/home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.6' not found (required by /home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif)
/home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif: /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5: version `Qt_5' not found (required by /home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif)
/home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif: /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5: version `Qt_5' not found (required by /home/user/Desktop/sconfig/dist/Release/GNU-Linux/SCongif)

我先移除了Qt5并清理了所有残留文件,然后重新安装了Qt5。

user@user-P64V7:~$ which qmake
/home/user/Qt5.8.0/5.8/gcc_64/bin/qmake
user@user-P64V7:~$ qmake --version
QMake version 3.1
Using Qt version 5.8.0 in /home/user/Qt5.8.0/5.8/gcc_64/lib
user@user-P64V7:~$ echo $PATH
/home/user/Qt5.8.0/5.8/gcc_64/bin:/home/user/bin:/home/user/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

值得一提的是,我使用的是Netbeans 8.2版本,QMake命令如下:

/home/user/Qt5.8.0/5.8/gcc_64/bin/qmake

您有任何想法我可能做错了什么吗?

非常感谢!


你有没有阅读过这个帖子 - m7913d
是的,我浏览了所有我能找到的线程。我的问题不在编译上,而在于执行... - Leta
2个回答

4

将用户主目录中的内容添加到全局 /etc/ld.so.conf.d 中有点可疑或至少不太美观(根据某种定义)...我想在个人工作站上这样做还可以,但我更愿意将其添加到用户特定的 LD_LIBRARY_PATH 中,该路径由用户控制且无需 root 访问权限。 - hyde
不过,我还是要为你提供答案并解决自己的问题点个赞,这种行为总是值得称赞的。 - hyde
1
实际上,这是我在第二个问题的答案中找到的: 自Ubuntu 9.04 Jaunty Jackalope以来,无法在$HOME/.profile、/etc/profile或/etc/environment文件中设置LD_LIBRARY_PATH。您必须使用/etc/ld.so.conf.d/.conf配置文件。 - Leta
哦,没想到。我通常在“~/.bashrc”中设置LD_LIBRARY_PATH,这对于我需要它的应用程序有效。 - hyde

0

cpu: armv8 os: Linux kylin.5.desktop-generic upgrade from 5.6 to 5.9

程序发布后会出现类似的情况。

解决方案:

  1. /usr/local/Qt-5.9.2 复制到目标计算机的 /usr/local/ 中。

  2. qtchooser -install qt5.9 /usr/local/Qt5.9.1/5.9.1/gcc_64/bin/qmake

  3. sudo bash -c "echo export QT_SELECT=qt5.9 >> /etc/profile"

  4. sudo ldconfig -v


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接