Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: altVis от Июнь 15, 2008, 18:04



Название: Использование программы на других системах и версиях Qt4
Отправлено: altVis от Июнь 15, 2008, 18:04
День добрый.
Хотелось бы узнать, почему программа прекрасно работающая у меня, в самых простых местах перестаёт работать у других, например на другом дистрибутиве линух но с той же версией Qt?

И вывод дэбага, не содержит ниодного обращения к моему коду.
Например:

(gdb) where
#0 0xb7fc6410 in __kernel_vsyscall ()
#1 0xb73f4085 in raise () from /lib/tls/i686/cmov/libc.so.6
#2 0xb73f5a01 in abort () from /lib/tls/i686/cmov/libc.so.6
#3 0xb768da75 in qt_message_output () from /usr/lib/libQtCore.so.4
#4 0xb768db38 in qFatal () from /usr/lib/libQtCore.so.4
#5 0xb768db9c in qt_assert_x () from /usr/lib/libQtCore.so.4
#6 0xb7df7433 in ?? () from /usr/lib/libQtGui.so.4
#7 0xb7e0382c in QTreeView::qt_metacall () from /usr/lib/libQtGui.so.4
#8 0xb7e3602a in QTreeWidget::qt_metacall () from /usr/lib/libQtGui.so.4
#9 0xb775ccf4 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#10 0xb775d8c2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#11 0xb7778fb7 in QTimeLine::finished () from /usr/lib/libQtCore.so.4
#12 0xb76d9d80 in ?? () from /usr/lib/libQtCore.so.4
#13 0xb775b8b4 in QObject::event () from /usr/lib/libQtCore.so.4
#14 0xb797b28d in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#15 0xb797ece7 in QApplication::notify () from /usr/lib/libQtGui.so.4
#16 0xb7749c1b in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#17 0xb7770e89 in ?? () from /usr/lib/libQtCore.so.4
#18 0xb776d9a0 in ?? () from /usr/lib/libQtCore.so.4
#19 0xb7302bf8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#20 0xb7305e5e in ?? () from /usr/lib/libglib-2.0.so.0
#21 0xb73063ac in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#22 0xb776df82 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#23 0xb79fc475 in ?? () from /usr/lib/libQtGui.so.4
#24 0xb7748fb2 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#25 0xb77490bc in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#26 0xb774b88a in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#27 0xb797a6e7 in QApplication::exec () from /usr/lib/libQtGui.so.4
#28 0x081c2ee8 in main ()

Любые соображения? Может это как-то отлавливается?


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: sikuda от Июнь 16, 2008, 14:11
Напиши хотябы какую версию Qt4 ты используешь где все работает. Какая стоит на той машине не работает. Попробуй статически скомпоновать свою программу. Какие результаты...


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: altVis от Июнь 16, 2008, 17:20
Я использовал Qt 4.3.3, теперь использую Qt 4.4.

У других видимо тоже 4.3.3, 4.3.4, 4.4, статическую сборку пока не пробовал.


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: Пантер от Июнь 16, 2008, 17:45
А ось какая? Наверное Линукс? ;)


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: altVis от Июнь 16, 2008, 20:35
А ось какая? Наверное Линукс? ;)
Да :)


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: Пантер от Июнь 17, 2008, 09:01
Тогда все ясно. Просто приложение скорее всего не может найти библиотеки. Допустим у тебя кутя установлена в /opt/qt/4.4.0, а на другой машине в /opt/qt - работать твоя софтина не будет, так как не найдет библиотеку. На Линуксе лучше не бинарники носить, а исходники, которые на месте компилировать. Или делать статик. Или носить бинарники библиотеки.


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: BRE от Июнь 17, 2008, 10:03
Тогда все ясно. Просто приложение скорее всего не может найти библиотеки. Допустим у тебя кутя установлена в /opt/qt/4.4.0, а на другой машине в /opt/qt - работать твоя софтина не будет, так как не найдет библиотеку.
Вообще-то, если при запуске, приложение не находит библиотеки, оно сообщает об этом и культурно завершается, падать оно не должно.


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: Пантер от Июнь 17, 2008, 10:20
Я вел к тому, что в Линуксе лучше собирать из исходников.


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: lit-uriy от Июнь 17, 2008, 14:11
так бы все программы и собирали из исходников, бинари вовсю используют, надо другое решение искать - человечное.
Поидее поиск осуществляется по переменным PATH и QTDIR может с ними что-то не так?


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: Red Devil от Июнь 17, 2008, 14:58
Судя по кору у тебя приложение валится, проблема в библиотеках - не Qt.
Собери нормальную отладочную версию, больше инфы из кора выбьешь - тогда и узнаешь в чем проблема.


Название: Re: Использование программы на других системах и версиях Qt4
Отправлено: ритт от Июнь 17, 2008, 15:15
попробуй глиб-ивент-луп отключить

присоединяюсь к ред девилу