Как обновить Qt через консоль?
Собираю бинарь на своей машине, загружаю на сервер(другая машина), не запускается. Заявляет мне :
/usr/local/lib/libQt5Core.so.5: version `Qt_5.15' not found
Говорю ему:
qmake -v
qmake version 3.1 у обеих машин, а вот что касается Qt version - версии разнятся.
Там qt5.12 у меня 5.15, хотя устанавливал одинаково через apt - неясно как так вышло, но как-то вышло. install, update, upgrade пробовал В интернете нашел, что все используют тулзу MaintenanceTool и она должна быть в корне qt, но у меня её в /usr/bin/x86-64-linux-gnu/qt... её нет нигде.
Казалось бы, тривиальная тема, но чего-то я уже зарылся, может есть какой-то нормальный, автоматизированный путь?
linux
сервер ubuntu 20.04 lts
моя машина ubuntu 22.04 lts
Вероятно поможет собрать на моей машине под другой Qt, но я пока что только разбираюсь с этим.Да и это такое себе решение
Ответы (1 шт):
Ответ такой:
Собирайте исходники на тех версиях, на которых вы собираетесь запускаться.(В крайнем случае собирайте на более старой версии). Это один из самых простых и верных способов(Но он не единственный).
Я сделал такие действия :
- использовал утилиту python qmake2cmake:
python -m pip install qmake2cmake
qmake2cmake_all ~/projects/myapp --min-qt-version 3.1
Если у вас ругается на
DISTFILESпросто закомментите их на время и запустите заново.После этого вы получаете CMake файл.
Дело за малым - исходники перенесите на нужную машину, создавайте папку bin в исходниках, в ней
cmake ../, потом make(тоже в папке bin, но если ругается на пути разныето можно и в папке с исходниками, просто там немного захламиться файлами)Конкретно у меня возникла проблема с
qt_add_executable, замените просто наadd_executableи перезапустите cmake и make.Готово, в директории, в которой вы запускали make и лежит ваш собранный проект. Не забудьте удалить исходники!