Название: Распространить приложения в ubuntu без установки Qt Отправлено: sergun1604 от Май 20, 2012, 20:15 Здравствуйте уважаемые программисты!
Дайте совет или отправьте куда нибудь... :) Возможно ли распространять приложения разработанные в Qt, не устанавливая qt? Приложения должны работать в ubuntu. Например что бы бинарник скинул в убунту и он работает. Если да, то пожалуйста подскажите как? И еще как быть с конфликтом версий. Например обновился с kubuntu 11,10 на 12,04 соответственно обновилось qt. а приложение уже работает на 10 машинах на убунту 11,10 и там нет возможности обновиться. Вот подделал что в программе иду менять бинарник и он уже на 11,10 машинах вылетает. В прошлый раз с 11,04 на 11,10 что то с символами было. а теперь с 11,10 на 12,04 что то ncreport стал отрубаться. Приходиться все машины тоскать на обновление... Поэтому собственно и вопрос первый возник. Очень нужен совет бывалых, а то такое чувство что все под форточки пишут с минжв. Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: alexis031182 от Май 20, 2012, 20:32 Не "Бывалый" ;D , но, на мой взгляд, нужно приложение через пакетный менеджер ставить. Это если по хорошему. Ubuntu раз в пол-года обновляется, так что не так уж и много мороки: собрал пакет на dev/admin-машине и распространил на рабочие станции (можно вообще автоматизировать перенос и установку пакетов).
Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: sergun1604 от Май 20, 2012, 21:42 это теория а как обновлять если машины друг от друга расположены на 10 ки км и нет у них доступа в инет. А как конфигурацию запоминать на своем и распространять на другие я не знаю. Спасибо за ответ
Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: alexis031182 от Май 20, 2012, 22:06 это теория а как обновлять если машины друг от друга расположены на 10 ки км и нет у них доступа в инет. Без переносного винчестера не обойтись, конечно.А как конфигурацию запоминать на своем и распространять на другие я не знаю. Спасибо за ответ Конфигурацию какую? Состав пакетов? Посмотрите справку по apt-get.Если есть свободный диск, можно просто записать образ своей, только что вновь установленной системы и перезалить ею диски на удалённых рабочих станциях (правда резервные копии имеющихся там файлов надо будет делать). Да много в принципе вариантов, но все они в Вашем случае получается сводятся к переносу данных вручную с использованием внешнего носителя. Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: sergun1604 от Май 21, 2012, 08:19 Хороший совет надо подумать и все таки можно ли рашарить прогу не устанавливая qt?
Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: Kurles от Май 21, 2012, 08:30 Хороший совет надо подумать и все таки можно ли рашарить прогу не устанавливая qt? Qt creator, если устанавливать не через репозиторий, а через установочник, скачаный с оф. сайта, так и устанавливается, тянет за собой все нужные библиотеки от Qt. Смотри в строрну опции линкера "-Wl,-rpath".Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: sergun1604 от Май 21, 2012, 08:36 то есть скачать установочник QtCreator с оф сайта установить его а потом мой бинарник?
Я вот думаю реально ли с бинарником например положить библиотеки Qt и чтобы он дергал инфу оттуда и непривязывался к конкретному ядру? Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: V1KT0P от Май 21, 2012, 09:07 Хороший совет надо подумать и все таки можно ли рашарить прогу не устанавливая qt? А что мешает делать статическую сборку?Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: Kurles от Май 21, 2012, 09:55 то есть скачать установочник QtCreator с оф сайта установить его а потом мой бинарник? Нет, тебе надо линковать свой бинарник с опцией "-Wl,-rpath,$(DEFAULT_LIB_INSTALL_PATH)", где DEFAULT_LIB_INSTALL_PATH - путь, можно относительный, где лежат библиотеки Qt.Я вот думаю реально ли с бинарником например положить библиотеки Qt и чтобы он дергал инфу оттуда и непривязывался к конкретному ядру? Без вышеозвученной опции линкера - нет, ибо приложение по умолчанию ищет разляемые библиотеки только в путях, описанных в $LD_LIBRARY_PATH. Гуглите :)Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: sergun1604 от Май 21, 2012, 11:20 Цитировать Нет, тебе надо линковать свой бинарник с опцией "-Wl,-rpath,$(DEFAULT_LIB_INSTALL_PATH)", где DEFAULT_LIB_INSTALL_PATH - путь, можно относительный, где лежат библиотеки Qt. не понимаю а через что линковать. я обычно просто копирую бинарник из папки debug в другую систему присваиваю права и всеЭто не правильно? Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: Kurles от Май 21, 2012, 12:26 Линкером линковать, при использовании Qt Creator'а просто этот этап выглядит прозрачно для пользователя. Нужно в .pro файл добавить строку типа
Код: unix: QMAKE_LFLAGS += -Wl,-rpath,./libs Название: Re: Распространить приложения в ubuntu без установки Qt Отправлено: sergun1604 от Май 21, 2012, 22:42 круто не знал, завтра попробую поэксперементить. Спасибо огромное - отпишусь.
|