Запуск приложения Qt 4.7 в Ubuntu 10.04 Lucid Lynx - PullRequest
3 голосов
/ 15 февраля 2011

Я работаю над кроссплатформенным приложением и использую последние библиотеки Qt версии 4.7.Проблема в том, что один из пользователей попытался запустить его на Ubuntu 10.04 Lucid Lynx, и он завис при undefined symbol: _ZN9QListData11detach_growEPii.Ubuntu 10.04 имеет Qt4.6.3, и, похоже, это проблема.

Однако, похоже, Ubuntu 10.04 не поддерживает 4.7 - только Ubuntu 10.10, и пользователь не хочет обновлять свой дистрибутив linux как свойдолгосрочная поддержка.Какие у меня варианты в этом случае?Пользователь потенциально может загрузить фреймворк 4.7 и скомпилировать его на своем ПК, но это будет означать, что каждый пользователь ubuntu 10.04 должен будет это сделать.В качестве альтернативы, я мог бы сделать дополнительные сборки, используя Qt 4.6, но я не могу найти эти старые библиотеки.

Есть предложения?Существуют ли какие-либо флаги компиляции, которые сделали бы его совместимым с 4.6?Может ли это быть ошибкой?

Спасибо!

РЕДАКТИРОВАТЬ: В итоге я отправил ему свои файлы Qt .so, и это сработало.Тем не менее, все ответы здесь были правильными и уместными - я хотел бы принять их всех.

Ответы [ 4 ]

5 голосов
/ 15 февраля 2011

см. Последнее сообщение http://ubuntuforums.org/showthread.php?t=1552263

Вам необходимо добавить это к своим источникам хранилища:

deb http://ppa.launchpad.net/kubuntu-ppa/backports/ubuntu lucid main
2 голосов
/ 16 февраля 2011

Помимо статического связывания с Qt, вы также можете просто распространять свои DLL-файлы Qt / so вместе с исполняемым файлом.Инструкция на странице развертывания Qt ясна http://doc.qt.io/archives/qt-4.7/deployment-x11.html

1 голос
/ 16 февраля 2011

Также вы можете строить свое приложение статически с библиотеками Qt. Смотри http://doc.qt.io/archives/qt-4.7/deployment-x11.html#static-linking Так что вы сможете распространять свое приложение где угодно (Ubuntu 9. / 10. ) без установки Qt SDK на целевые машины.

1 голос
/ 15 февраля 2011

Наоборот, ему нужен QT 4.6.3.Я предполагаю, что он на 10.10, но нуждается в Qt с 10.04.Для этого требуется

deb-src http://archive.ubuntu.com/ubuntu lucid main restricted universe multiverse

, теперь вы можете

sudo apt-get build-dep libqt4-core libqt4-dev
sudo apt-get -b source -t lucid libqt4-core libqt4-dev

собрать версию lucid (при необходимости добавьте больше пакетов qt).

Ps.вы находитесь на неправильном сайте, это больше похоже на Unix. * или суперпользователя.

...