问题是,在我尝试从源代码构建超级对撞机之前,请确保我使用的是 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 是否存在配置错误,文档在这里:
和这里:
从 Scratch 开始在 Linux 上使用 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
回到起点,没有变化。现在怎么办?
答案1
所有这些最终都只是一个幌子:所需要做的就是安装 qmake,例如:
sudo apt install qt5-qmake