Russian Qt Forum
Ноябрь 24, 2024, 00:10 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2] 3   Вниз
  Печать  
Автор Тема: Что надо для переноса исполняемой программы с Qt на другой комп?  (Прочитано 27130 раз)
a_n_y_a
Гость
« Ответ #15 : Ноябрь 14, 2008, 09:18 »

для линуха надо найти пакет Qt от разработчика этого дистрибутива ОСьки. И его ставить.
Только что проверил, eclipse предлагает для линукса х32 один пакет с исполняемыми файлами. Его распаковал в каталог, запустил и все работает без каких либо настроек. Как они это делают? Ведь работает для любой версии и сборки линукса?
Записан
Hort
Гость
« Ответ #16 : Ноябрь 14, 2008, 09:26 »

для линуха надо найти пакет Qt от разработчика этого дистрибутива ОСьки. И его ставить.
Только что проверил, eclipse предлагает для линукса х32 один пакет с исполняемыми файлами. Его распаковал в каталог, запустил и все работает без каких либо настроек. Как они это делают? Ведь работает для любой версии и сборки линукса?
как говорилось в моей теме - для этого надо быть экспертом Линукс. знать все зависимости и тонкости qt билиотеки, перепробовать немало дистрибутивов с ней
http://www.prog.org.ru/topic_8004_0.html
Записан
ритт
Гость
« Ответ #17 : Ноябрь 14, 2008, 10:26 »

a_n_y_a, жжёшь! eclipse на жабе Улыбающийся
зато саму жре порой без шаманства не установишь...простой пример: пробовали установить жре на х86_64-пюре, где нет папочки /lib64 и в частности /lib64/ld-linux*.so ? бгг...
Записан
Detonator
Гость
« Ответ #18 : Ноябрь 14, 2008, 10:31 »

А что такое Qt for Embedded Linux? Там вроде свой графический движок и оконная система, возможно ли его применить для всех обычных версий линуксов?
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #19 : Ноябрь 14, 2008, 11:02 »

2 Detonator,
во-первых, Thunderbird тоже имеет зависимости, от GTK насколько я помню.
во-вторых, Qt for Embedded Linux - для встраиваемы систем (КПК, смартфоны и прочие устройства)
Записан

Юра.
ритт
Гость
« Ответ #20 : Ноябрь 14, 2008, 11:27 »

прямые зависимости зандербёрда:
Цитировать
Required
Gtk2
libIDL
Zip

Recommended
NSS

Optional
Unzip
libgnomeui
OpenLDAP
и ещё набор косвенных зависимостей...
собирать такого монстра статиком бессмысленно (есть тот же фф на общем движке)...
Записан
Detonator
Гость
« Ответ #21 : Ноябрь 14, 2008, 11:34 »

Т.е. если писать программу с зависимостью только от Qt4.4.3, то проблема совсместимости будет решена?
Записан
ритт
Гость
« Ответ #22 : Ноябрь 14, 2008, 12:02 »

можно, конечно, попробовать. но думаю, всё-равно смогут помешать гцц и глибси разных версий на исходной и конечной системах.
по опыту могу сказать, что проблем не будет, если версии библиотек из зависимостей на исходной системе будут не выше, чем на целевой системе (исключение - gtk и т.п.). при этом желательно чтобы параметры сборки совпадали (так некоторые параметры оптимизации иногда могут сделать бинарь нерабочим на целевой системе). то же касается флагов упаковки - обычно лучше их вообще не использовать, если программа пишется не под "встраиваемые устройства".
и плюс к этому возьмите за привычку собирать позиционно-независимые бинарники - это действительно может упростить задачу и облегчить жизнь в будущем.

но часто бывает всё проще - когда-то (ещё в линейке glibc2.2/2.3) я не беспокоился о таких вопросах и просто копировал нужные бинари из редхата в свою сборку и обратно...
Записан
Detonator
Гость
« Ответ #23 : Ноябрь 14, 2008, 12:36 »

"позиционно-независимые бинарники" - что имеется в виду?
Записан
ритт
Гость
« Ответ #24 : Ноябрь 14, 2008, 12:38 »

position-independent code (PIC) / position-independent executable (PIE)
http://en.wikipedia.org/wiki/Position-independent_code
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #25 : Ноябрь 14, 2008, 11:50 »

собирай rpm и deb. Только зависимости правильно пропиши, тогда пакетный менеджер сам всё доустановит. И собирать желательно на более старой версии glibc, например на 2.3 или 2.4.
Записан
SASA
Гость
« Ответ #26 : Ноябрь 17, 2008, 10:06 »

Под виндой тоже не всё гладко.
Собирали на VS2008. Переписали на чистую машину с вин XP sp2 – фиг. Переписали студийные библиотеки, которых не хватало – опять не работает. Написали студией инсталлятор  - всё OK. Но программка весит ~ 10 Mb, а инсталлятор ~ 200Mb
Записан
Detonator
Гость
« Ответ #27 : Ноябрь 17, 2008, 12:03 »

Цитировать
Переписали студийные библиотеки, которых не хватало


Для VS2008 их нужно не просто переписывать, а именно устанавливать специальным установщиком runtime размером 1.7 Мб. При этом там еще что-то прописывается чтобы все заработало.
Проще компилить в полный статик /MT.
Записан
Hort
Гость
« Ответ #28 : Ноябрь 17, 2008, 19:02 »

Под виндой тоже не всё гладко.
Собирали на VS2008. Переписали на чистую машину с вин XP sp2 – фиг. Переписали студийные библиотеки, которых не хватало – опять не работает. Написали студией инсталлятор  - всё OK. Но программка весит ~ 10 Mb, а инсталлятор ~ 200Mb
за это и не люблю студию. MinGW - самое оно - откомпилировал на XP SP3 - запустилосб без проблем на чистом Win2000
Записан
darkmacho
Гость
« Ответ #29 : Декабрь 07, 2008, 23:00 »

Так что нужно делать если я хочу что б моя программа запускалась на других компах(XP или Vista) ? опять собирать qt со -static
Записан
Страниц: 1 [2] 3   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.051 секунд. Запросов: 23.