Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [QT3] не линкуются QT-библиотеки, qmake не указывает их в Makefile. 
V
    Опции темы
warmonger_
Дата 11.12.2007, 23:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 7.7.2007
Где: г. Киев

Репутация: нет
Всего: 3



Доброго времени суток!
создаю в девелопере простенькую программку(очень):
Код

#include <qapplication.h>
#include <qlabel.h>

int main(int argc, char **argv)
{
 
 return 0;
}


при компиляции выдает:
---------------------------------------------------------------------------------------------------------------------------------------
[root@localhost qt]# ls
Makefile  qt.pro  t.cpp  t.cpp~  t.o
[root@localhost qt]# qmake -project
[root@localhost qt]# qmake
[root@localhost qt]# make
g++  -o qt t.o     -lXext -lX11 -lm
t.o:(.gnu.linkonce.r._ZTV6QGList+0x18): undefined reference to `QGList::clear()'
t.o:(.gnu.linkonce.r._ZTV6QGList+0x20): undefined reference to `QGList::~QGList()'
t.o:(.gnu.linkonce.r._ZTV6QGList+0x28): undefined reference to `QGList::~QGList()'
t.o:(.gnu.linkonce.r._ZTV6QGList+0x30): undefined reference to `QPtrCollection::newItem(void*)'
t.o:(.gnu.linkonce.r._ZTV6QGList+0x40): undefined reference to `QGList::compareItems(void*, void*)'
t.o:(.gnu.linkonce.r._ZTV6QGList+0x48): undefined reference to `QGList::read(QDataStream&, void*&)'
t.o:(.gnu.linkonce.r._ZTV6QGList+0x50): undefined reference to `QGList::write(QDataStream&, void*) const'
t.o:(.gnu.linkonce.r._ZTI6QGList+0x10): undefined reference to `typeinfo for QPtrCollection'
collect2: ld returned 1 exit status
make: *** [qt] Error 1
---------------------------------------------------------------------------------------------------------------------------------------

qt должна быть установлена...
os: 
Fedora 7

что это может значить? что нужно сделать, что-бы было нормально....


--------------------
Make everything as simple as possible, but not simpler.Albert Einstein
PM MAIL   Вверх
bsa
Дата 11.12.2007, 23:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 24
Всего: 196



Надо подключить библиотеки и специальные правила сборки настроить... Создай лучше QT проект и там разминайся.
PM   Вверх
warmonger_
Дата 12.12.2007, 00:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 7.7.2007
Где: г. Киев

Репутация: нет
Всего: 3



но раньше (если мне не изменяет память на федоре 6) у меня это выходило без проблем...
почему же ейчас нехочет?


--------------------
Make everything as simple as possible, but not simpler.Albert Einstein
PM MAIL   Вверх
bsa
Дата 12.12.2007, 00:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 24
Всего: 196



Не знаю, что и когда у тебя выходило. Одно могу сказать точно - это не обязано работать.
PM   Вверх
warmonger_
Дата 12.12.2007, 00:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 7.7.2007
Где: г. Киев

Репутация: нет
Всего: 3



если можно, скажи пожалуйста, в каком случае оно !обязано! работать?
--------------------
Make everything as simple as possible, but not simpler.Albert Einstein
PM MAIL   Вверх
bsa
Дата 12.12.2007, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 24
Всего: 196



создаешь папку.
в нее кидаешь файл main.cpp:
Код
#include <QApplication>
#include <QLabel>
int main(int argc, char *argv[])
{
       return 0;
}

Выполняешь команду: qmake -project
Затем: qmake
И наконец: make
После этого если у тебя установлены QT4 и QT4-devel соберется бинарник под именем "main".
Затем в KDevelop входишь в меню Project-Import existing project указываешь эту папку, говоришь, что это QT4 и вперед.
PM   Вверх
JackYF
Дата 12.12.2007, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 7
Всего: 162




 ! 
JackYF
warmonger_, читай правила раздела по именованию тем!


Какова версия QT? и покажи нам содержимое Makefile.

Это сообщение отредактировал(а) JackYF - 12.12.2007, 15:55


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
warmonger_
Дата 12.12.2007, 18:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 7.7.2007
Где: г. Киев

Репутация: нет
Всего: 3



bsa
так дело в том, что при вводе команды make выдаются ошибки (см. выше)




JackYF
QT 3.3 
но я вроди понял в чем проблема - нужно указать переменные среды.
--------------------
Make everything as simple as possible, but not simpler.Albert Einstein
PM MAIL   Вверх
JackYF
Дата 12.12.2007, 19:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 7
Всего: 162



Цитата(warmonger_ @  12.12.2007,  18:35 Найти цитируемый пост)
но я вроди понял в чем проблема - нужно указать переменные среды. 

мда. Ещё раз:

Цитата(JackYF @  12.12.2007,  15:55 Найти цитируемый пост)
и покажи нам содержимое Makefile.




--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
warmonger_
Дата 12.12.2007, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 7.7.2007
Где: г. Киев

Репутация: нет
Всего: 3



пожалуйста:
Код

 
#############################################################################
# Makefile for building: qt
# Generated by qmake (1.07a) (Qt 3.3.6) on: Tue Dec 11 19:03:25 2007
# Project:  qt.pro
# Template: app
# Command: $(QMAKE) -o Makefile qt.pro
#############################################################################

####### Compiler, tools and options

CC       = gcc
CXX      = g++
LEX      = flex
YACC     = yacc
CFLAGS   = -pipe -Wall -W -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -DQT_NO_DEBUG 
CXXFLAGS = -pipe -Wall -W -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -DQT_NO_DEBUG 
LEXFLAGS = 
YACCFLAGS= -d
INCPATH  = -I/usr/lib64/qt-3.3/mkspecs/default -I. -I. -I$(QTDIR)/include
LINK     = g++
LFLAGS   = 
LIBS     = $(SUBLIBS)  -lXext -lX11 -lm
AR       = ar cqs
RANLIB   = 
MOC      = $(QTDIR)/bin/moc
UIC      = $(QTDIR)/bin/uic
QMAKE    = qmake
TAR      = tar -cf
GZIP     = gzip -9f
COPY     = cp -f
COPY_FILE= $(COPY)
COPY_DIR = $(COPY) -r
INSTALL_FILE= $(COPY_FILE)
INSTALL_DIR = $(COPY_DIR)
DEL_FILE = rm -f
SYMLINK  = ln -sf
DEL_DIR  = rmdir
MOVE     = mv -f
CHK_DIR_EXISTS= test -d
MKDIR    = mkdir -p

####### Output directory

OBJECTS_DIR = ./

####### Files

HEADERS = 
SOURCES = t.cpp
OBJECTS = t.o
FORMS = 
UICDECLS = 
UICIMPLS = 
SRCMOC   = 
OBJMOC = 
DIST       = qt.pro
QMAKE_TARGET = qt
DESTDIR  = 
TARGET   = qt

first: all
####### Implicit rules

.SUFFIXES: .c .o .cpp .cc .cxx .C

.cpp.o:
    $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cc.o:
    $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cxx.o:
    $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.C.o:
    $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.c.o:
    $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<

####### Build rules

all: Makefile $(TARGET)

$(TARGET):  $(UICDECLS) $(OBJECTS) $(OBJMOC)  
    $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(OBJCOMP) $(LIBS)

mocables: $(SRCMOC)
uicables: $(UICDECLS) $(UICIMPLS)

$(MOC): 
    ( cd $(QTDIR)/src/moc && $(MAKE) )

Makefile: qt.pro  /usr/lib64/qt-3.3/mkspecs/default/qmake.conf 
    $(QMAKE) -o Makefile qt.pro
qmake: 
    @$(QMAKE) -o Makefile qt.pro

dist: 
    @mkdir -p .tmp/qt && $(COPY_FILE) --parents $(SOURCES) $(HEADERS) $(FORMS) $(DIST) .tmp/qt/ && ( cd `dirname .tmp/qt` && $(TAR) qt.tar qt && $(GZIP) qt.tar ) && $(MOVE) `dirname .tmp/qt`/qt.tar.gz . && $(DEL_FILE) -r .tmp/qt

mocclean:

uiclean:

yaccclean:
lexclean:
clean:
    -$(DEL_FILE) $(OBJECTS)
    -$(DEL_FILE) *~ core *.core


####### Sub-libraries

distclean: clean
    -$(DEL_FILE) $(TARGET) $(TARGET)


FORCE:

####### Compile

t.o: t.cpp 

####### Install

install:  

uninstall:  




--------------------
Make everything as simple as possible, but not simpler.Albert Einstein
PM MAIL   Вверх
JackYF
Дата 12.12.2007, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 7
Всего: 162



Цитата(warmonger_ @  12.12.2007,  18:35 Найти цитируемый пост)
нужно указать переменные среды.

Ага. ну нет линка на QtGui. Покажи .pro-файл.
Тебе, скорее всего, придётся добавить туда

Цитата

QT += gui core



--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
warmonger_
Дата 12.12.2007, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 7.7.2007
Где: г. Киев

Репутация: нет
Всего: 3



Код

######################################################################
# Automatically generated by qmake (1.07a) Wed Dec 12 15:41:45 2007
######################################################################

TEMPLATE = app
CONFIG -= moc
INCLUDEPATH += .

# Input
SOURCES += t.cpp



что-то я запутался....

Это сообщение отредактировал(а) warmonger_ - 12.12.2007, 21:50
--------------------
Make everything as simple as possible, but not simpler.Albert Einstein
PM MAIL   Вверх
bsa
Дата 12.12.2007, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 24
Всего: 196



warmonger_, добавь в .pro файл:
QT += core gui
PM   Вверх
warmonger_
Дата 12.12.2007, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 7.7.2007
Где: г. Киев

Репутация: нет
Всего: 3



Цитата(bsa @ 12.12.2007,  22:16)
warmonger_, добавь в .pro файл:
QT += core gui

нечего не изменилось
--------------------
Make everything as simple as possible, but not simpler.Albert Einstein
PM MAIL   Вверх
bsa
Дата 12.12.2007, 22:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 24
Всего: 196



qmake запускал?
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0928 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.