Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: ошибка компиляции
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Общие вопросы
kermit
не судите строго, т.к. я новичек.

пытаюсь собрать самую первую программу "привет мир"
 #include <QApplication>
#include <QPushButton>

int main(int argc, char** argv)
{
    QApplication app(argc, argv);
    QPushButton hello("Hello, World!");
    hello.resize(100, 30);
    hello.show();
    return app.exec();
}


затем выполняю
qmake -project
qmake
make


после make вылетает ошибка
 MAKE Version 5.2  Copyright (c) 1987, 2000 Borland
Fatal: 'FORCE' does not exist - don't know how to make it


подскажите плз, как справиться
AD
А с помощью чего собираешь. Какая версия Qt? Какой компилятор?
kermit
Цитата(AD @ 22.9.2008, 1:08) *
А с помощью чего собираешь. Какая версия Qt? Какой компилятор?


qt версии 4.4.2 , компилятор из набора mingw
Litkevich Yuriy
Во-первых, в таких случаях пишут версии ОС, библиотеки и компилятора.
Во-вторых, ты должен собирать свою программу тем же компилятором, которым собраны dll'ки Qt
В-третьих, у тебя программа make от Borland'а, отсюда вопросы:
1) ты Qt сам собирал, если да, то каким компилятором?
2) Если использовал автоустановщик, то он использует dll'ки собранные с помощью MinGW32, что указано в названии (qt-win-opensource-4.*.*-mingw.exe). Как следствие программу собирать надо с помощью комплекта MinGW.
kermit
Спасибо, все понял)
Litkevich Yuriy
У тебя видимо пути не прописаны к MinGW, если тебе нужно будет пользоваться Borland'ом, то перекрывать путь к его программе make, может оказаться несамым лучшим вариантом. попробуй использовать bat-файл для задания переменных окружения.
(По аналогии с тем как я делаю, а вообще начни читать отсюда)
kermit
C mingw все заработало. Теперь я попытался собрать qt для ms visual c++ exprr edit. Сделал все как в ридми из qt. еще пользовался статейкой http://wiki.qgis.org/qgiswiki/Building_QT_...al_C%2B%2B_2005 Только вот при компиляции vc++ выдает ошибку
Compiling...
hello.cpp
Linking...
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static int __cdecl QApplication::exec(void)" (__imp_?exec@QApplication@@SAHXZ)
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall QApplication::~QApplication(void)" (__imp_??1QApplication@@UAE@XZ)
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall QApplication::QApplication(int &,char * *,int)" (__imp_??0QApplication@@QAE@AAHPAPADH@Z)
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall QPushButton::~QPushButton(void)" (__imp_??1QPushButton@@UAE@XZ)
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall QPushButton::QPushButton(class QString const &,class QWidget *)" (__imp_??0QPushButton@@QAE@ABVQString@@PAVQWidget@@@Z)
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall QWidget::resize(int,int)" (__imp_?resize@QWidget@@QAEXHH@Z)
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall QWidget::show(void)" (__imp_?show@QWidget@@QAEXXZ)
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall QString::~QString(void)" (__imp_??1QString@@QAE@XZ)
hello.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall QString::QString(char const *)" (__imp_??0QString@@QAE@PBD@Z)


Как нормально правильно подключить qt к ms vc++, возможно ли это? если нет то посоветуйте плз какой ни будь IDE для mingw.
ViGOur
Цитата(kermit @ 23.9.2008, 20:28) *
Как нормально правильно подключить qt к ms vc++,
Для MSVC Qt нужно собирать отдельно.
Тоесть ты собрал qt для mingw, еще нужно собрать для msvc вроде:
configure -platform win32-msvc2005...
kermit
Так в ридми написано
 For Microsoft Visual Studio to create the library and
compile all the demos, examples, tools and tutorials type:

nmake


А не посоветуете какую ни будь IDE для mingw?
AD
Цитата(kermit @ 23.9.2008, 23:48) *
А не посоветуете какую ни будь IDE для mingw?

Можно тот же Eclipse использовать. Или же QtDevelope, или же Net Beans! На вкус и Ваш выбор! :)
trdm
еще кодеблокс: http://www.codeblocks.org/
некоторые вещи делаются ручками, но остальное рулит...
Litkevich Yuriy
Цитата(kermit @ 24.9.2008, 2:48) *
Так в ридми написано
For Microsoft Visual Studio to create the library and
compile all the demos, examples, tools and tutorials type:

nmake
Тема также обсуждалась ищи по ключевому слову VS2005, например.

Цитата(kermit @ 24.9.2008, 2:48) *
А не посоветуете какую ни будь IDE для mingw?
есть соответствующая тема

AD, trdm, лучше дать ссылку на тему а не захламлять эту.
kermit
pnotepad решил поюзать. вроде как ничего.

Я создал файл qmake.bat в нем записал

qmake -project
qmake
make
pause

В настройках Programmer's Notepad: Tools->Options->Tools, в схеме С/С++ добавил тулзу. В качестве команды батник, а каталог поставил текущий. И назвал его "Build". Теперб просто нажимаю "билд" оно сразу компилит и собирает. Это вообще корректно, то чно я сделал?
molchanoviv
а почему нет? я в Notepad++ тоже батник использую. а в kate использую sh скрипт
тока у меня батник немного другой
Litkevich Yuriy
kermit, могу дать свои наработки к нему, если надо
Litkevich Yuriy
Создал тему PN2, Programmers Notepad там выложил архивчик с настройками
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.