问题是,在尝试从源代码构建超级对撞机之前,请确保我正在使用Qt5。问题是这样的:
jsimon@edgy:~$ qmake -v
qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory
jsimon@edgy:~$ locate qmake
/usr/bin/qmake
我认为在qtchooser中配置错误,这里的文档:
和这里:
进一步挖掘,其中有一个带有一些符号链接的目录:
jsimon@edgy:/usr/lib/x86_64-linux-gnu/qtchooser$ ls -al
lrwxrwxrwx 1 root root 50 Sep 1 06:04 4.conf -> ../../../share/qtchooser/qt4-x86_64-linux-gnu.conf
lrwxrwxrwx 1 root root 50 Sep 1 06:04 5.conf -> ../../../share/qtchooser/qt5-x86_64-linux-gnu.conf
lrwxrwxrwx 1 root root 50 Sep 1 06:04 qt4.conf -> ../../../share/qtchooser/qt4-x86_64-linux-gnu.conf
lrwxrwxrwx 1 root root 50 Sep 1 06:04 qt5.conf -> ../../../share/qtchooser/qt5-x86_64-linux-gnu.conf
还有一个更深的目录,它看起来像是我的问题,一个符号链接将Qt4设置为默认值:
jsimon@edgy:/usr/lib/x86_64-linux-gnu/qt-default/qtchooser$ ls -al
lrwxrwxrwx 1 root root 53 Sep 1 06:04 default.conf -> ../../../../share/qtchooser/qt4-x86_64-linux-gnu.conf
来自qtchooser的一些信息:
jsimon@edgy:~$ qtchooser -print-env
QT_SELECT="default"
QTTOOLDIR="/usr/lib/x86_64-linux-gnu/qt4/bin"
QTLIBDIR="/usr/lib/x86_64-linux-gnu"
查看此页面,它应该很简单:
然而:
jsimon@edgy:~$ export QT_SELECT=qt5
jsimon@edgy:~$ printenv
[snip]
QT_SELECT=qt5
[snip]
jsimon@edgy:~$ qmake -v
qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt5/bin/qmake': No such file or directory
回到我们开始的地方,没有变化。怎么办?
您是否已阅读此处的超级对撞机自述文件 。它详细介绍了要安装的几个依赖项,包括Qt。它还详细介绍了在构建时如何设置Qt的路径(用于存储库安装或从Qt网站进行安装)。不必使用qtchooser。
—
gsxruk
是的,我对此进行了仔细研究,并在超级对撞机邮件列表中讨论了该问题。新的超级对撞机邮件列表论坛使用这些。2681727.n2.nab…
—
J. Simon van der Walt
在我看来,qtchooser可能是执行此操作的“正确”方法。
—
J. Simon van der Walt
如果主要错误是
—
steeldriver
could not exec '/usr/lib/x86_64-linux-gnu/qt5/bin/qmake': No such file or directory
,那就表明你需要安装(或重新安装)的qt5-qmake
软件包
就我而言
—
dafnahaktana
qt5-qmake
,已经安装了,但仍然有这个问题。我的解决方案是更改链接sudo ln -s -T /usr/share/qtchooser/qt5-x86_64-linux-gnu.conf /usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf -f