Я пытаюсь собрать cpp проект, который зависит от Qt. Я установил Qt в папку opt.
Домашний каталог Qt: /opt/Qt/5.9.9/gcc_64
Исполняемый файл qmake находится в каталоге: /opt/Qt/5.9. 9/gcc_64/bin
Когда я запускаю команду make clean
или make install
, он не работает с ошибкой ниже:
/usr/lib/qt5/bin/qmake -o Makefile cloudscrape.pro
Project ERROR: Unknown module(s) in QT: core gui core-private gui-private platformcompositor_support-private fontdatabase_support-private eventdispatcher_support-private theme_support-private
make: *** [Makefile:245: Makefile] Error 3
Когда я запускаю команду qmake -v
, он показывает следующий результат:
QMake version 3.1
Using Qt version 5.12.8 in /usr/lib/x86_64-linux-gnu
Очень странно, что путь qmake в ошибке /usr/lib/qt5/bin/qmake
. Я пытался изменить путь каталога qmake
, реализовав следующие действия:
PATH
и он указывает на правильный QT. Ниже приведено значение PATH
:PATH=/home/rando/.pyenv/shims:/home/rando/.pyenv/bin:/home/rando/.nvm/versions/node/v9.6.1/bin:/home/rando/.sdkman/candidates/maven/current/bin:/home/rando/.sdkman/candidates/java/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/opt/Qt/5.9.9/gcc_64/bin
QMake version 3.1
Using Qt version 5.9.9 in /opt/Qt/5.9.9/gcc_64/lib
Но все равно проблема сохраняется, потому что когда я запускаю make clean
или make install
, он использует неправильный каталог:
/usr/lib/qt5/bin/qmake -o Makefile cloudscrape.pro
Project ERROR: Unknown module(s) in QT: core gui core-private gui-private platformcompositor_support-private fontdatabase_support-private eventdispatcher_support-private theme_support-private
make: *** [Makefile:245: Makefile] Error 3
Я смог исправить эту проблему, перезапустив машину. Я думаю, что проблема была в настройке кэша, и запуск нового сеанса помог прояснить ситуацию.
найдите qtchooser | grep conf
sudo gedit ${path}/qtchooser/qt5.conf
как показано ниже:/opt/Qt/5.9.9/gcc_64/lib
/opt/Qt/5.9.9/gcc_64