LINUX.ORG.RU

Какая-то фигня с классом KLed в Qt


0

0

Здравствуйте!

У меня такая проблема: пишу свою первую программу в Qt (не Hello World), просто портирую свою виндовую прогу в Линукс. При компилляции линкер матюкается на то, что не может найти Kled. Это раз. Вторая проблема заключается в глючных layout'ах. Интерфейс главного окна очень прост: вверху горизотально расположено три тулбаттона сруппированные в HBox. Ниже TabSheet (вроде так называется) с двумя вкладками. На первой вкладке два layout'a QLCDNumber+QTextLabel(в HBox'e) и несколько KLed+QTextLabel. Так вот, убираем KLed'ы ( чтобы компилилось ) и компилим. Запускаем. Тулбаттоны меньшего размера, чем в QT Designer, а QLCDNumber+QTextLabel вообще в полоску сжались. Что за фигня? Третья проблема заключается в том, что когда я выставляю главной форме SizePolicy в Fixed, все контролы сжимаются в одну махонькую окружность. Если же выставить SizePolicy в Fixed сначала, а потом уже помещать контролы, то их не видно! Что за глюконат? А ещо всякие статьеписатели утверждают, что Линукс, мол, не глючит. Я пока это всё проделывал, Qt Designer вылетел 5 раз без всяких там "Программа выполнила недопустимую операцию...". Я тоже в винде так могу сделать: если какая ошибка, то молча закрываться.

Вот сообщения g++:

[empl@OTD17-4 pvp]$ make g++ -c -pipe -Wall -W -O2 -fomit-frame-pointer -pipe -march=i586 -mcpu=pentiumpro -DQT_NO_DEBUG -I/usr/lib/qt3/mkspecs/default -I. -I/usr/lib/qt3/include -I.ui/ -I.moc/ -o .obj/fmmain.o .ui/fmmain.cpp g++ -o pvp .obj/main.o .obj/fmmain.o .obj/settings.o .obj/qmake_image_collection.o .obj/moc_fmmain.o .obj/moc_settings.o -L/usr/lib/qt3/lib -L/usr/X11R6/lib -lqt -lXext -lX11 -lm .obj/fmmain.o(.text+0x9d9): In function `QfmMain::QfmMain[not-in-charge](QWidget*, char const*, unsigned)': : undefined reference to `KLed::KLed[in-charge](QWidget*, char const*)' .obj/fmmain.o(.text+0xa29): In function `QfmMain::QfmMain[not-in-charge](QWidget*, char const*, unsigned)': : undefined reference to `KLed::KLed[in-charge](QWidget*, char const*)' .obj/fmmain.o(.text+0xa79): In function `QfmMain::QfmMain[not-in-charge](QWidget*, char const*, unsigned)': : undefined reference to `KLed::KLed[in-charge](QWidget*, char const*)' .obj/fmmain.o(.text+0xac9): In function `QfmMain::QfmMain[not-in-charge](QWidget*, char const*, unsigned)': : undefined reference to `KLed::KLed[in-charge](QWidget*, char const*)' .obj/fmmain.o(.text+0xb19): In function `QfmMain::QfmMain[not-in-charge](QWidget*, char const*, unsigned)': : undefined reference to `KLed::KLed[in-charge](QWidget*, char const*)' .obj/fmmain.o(.text+0xb69): more undefined references to `KLed::KLed[in-charge](QWidget*, char const*)' follow collect2: ld returned 1 exit status make: *** [pvp] Ошибка 1

Заранее благодарю.

★★

По поводу KLed: это фича из KDE а не из Qt. Соответственно, кроме Qt-шных заголовков и библиотек нужно подключать KDE-шные....

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