LINUX.ORG.RU

Qt: Сборка deb-пакета проекта qt со сторонними библиотеками

 


1

2

Всем привээээт!) Собственно весь вопрос в заголовке. Написан проект Qt+OpenCV, OpenCV собран как рантайм, теперь надо перенести на машину с Debian (у меня Kubuntu). Просьба - подсказать, как это делается.


Ответ на: комментарий от Tumyq

Ну а когда библиотеки все будут в одном месте, там уже или собираем AppImage с помощью того же linuxdeployqt, либо по какому-нибудь из мануалов deb пакет, например вот.

CrossFire ★★★★★
()
Ответ на: комментарий от CrossFire

посмотрел , что такое linuxdeployqt.

оно собирает необходимые для запуска проекта библиотеки все в одну кучу, так?

А будут ли добавлены библиотеки от opencv?

Tumyq
() автор топика
Ответ на: комментарий от Tumyq

a) Там вроде есть флаг подтягивать вообще все зависимости.
б) В крайнем случае их можно и руками скопировать, их ведь все видно при подключении в .pro файле.

CrossFire ★★★★★
()
Ответ на: комментарий от CrossFire
QMAKE_LFLAGS += -static

Вот такой там флаг, на который ругается qmake.

Подключаю в .pro так:

INCLUDEPATH += "/usr/local/include/"
LIBS += `pkg-config --libs opencv`

но, в принципе, нашел откуда либы берутся

Tumyq
() автор топика
Ответ на: комментарий от former_anonymous

Что значит дефолтный - он как-то уже установлен в Линукс? Я так понял, что его надо именно собирать с CMake под Qt, если планировать его использовать так.

Tumyq
() автор топика
Ответ на: комментарий от Tumyq

В смысле? Твой вопрос звучит очень размыто. Я использовал opencv в Qt приложениях. Просто берёшь подключаешь заголовк и используешь opencv классы. В .pro файле прописываешь нужные LIBS - и всё.

former_anonymous ★★★
()
Ответ на: комментарий от former_anonymous

Ясно. Имел в виду, что так же - заголовки или что-нибудь еще

Tumyq
() автор топика
Ответ на: комментарий от CrossFire

В продолжении темы.. Подскажи, пожалуйста,насчет linuxdeployqt. Сделал там по инструкции, получил папки lib и plugins. Теперь переношу всю папку с проектом и этими папками внутри на другую машину (у меня Kubuntu 18.04, переношу на Raspbian - от raspberry pi), и не работает. На моей машине запускалось и без этих созданных linuxdeployqt папок, поэтому не понятно, оно вообще работало автономно или нет. Нужно что-то прописывать в самом проекте, менять директории либ или оно само подхватывается? Что надо еще сделать?

Tumyq
() автор топика
Ответ на: комментарий от Tumyq

у меня Kubuntu 18.04, переношу на Raspbian - от raspberry pi

Я правильно понял, что ты собирал программу под интеловскую архитектуру и теперь удивляешься, что она не работает на ARM?

Тебе нужна либо кросс-компиляция, либо собирать программу на самой Raspberry Pi. Первый путь идейно более правильный, но для него надо готовить компилятор, либы и всё остальное. Второй, возможно, проще, но собираться будет долго.

anonymous
()
Ответ на: комментарий от former_anonymous

В .pro файле прописываешь нужные LIBS - и всё.

...и в случае винды приходится писать абсолютные пути к библиотекам, да?

anonymous
()
Ответ на: комментарий от anonymous

Да, правильно, теперь удивляюсь. Я могу скачать qt5-default, запустить qmake, потом откомпилировать? А еще, выяснилось, что там проц 32-битный и он ругается на 64

Tumyq
() автор топика
Ответ на: комментарий от Tumyq

А еще, выяснилось, что там проц 32-битный и он ругается на 64

Он не просто 32-битный. У него СОВСЕМ ДРУГАЯ система команд. Там не x86, там ARM, со всеми вытекающими.

Да, можно сделать qmake и make на самой малинке, но за точные названия пакетов не ручаюсь.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.