如何像用MinGW写普通C++程序一样写QT GUI程序

kwclhit 2009-02-16 05:58:46
我想用C++编写QT GUI程序,但是不想使用qmake工具,我只是想使用MinGW的make来完成所有的工作,因为我喜欢都用手工完成所有工作,包括写代码、编译、运行,当然其中要写Makefile文件了,不想用QT的工具。首先,介绍一下我本机的环境:
1.安装了eclipse3.3,其实是MyEclipse6.5
2.安装了CDT的eclipse插件
3.安装了MinGW 5.1.4(c:\MinGW)
4.安装了QT 4.4.3 (C:\Qt\4.4.3)是:qt-win-opensource-4.4.3-mingw.exe带有MinGW的,安装后没有编译,因为我看到
lib下面已经有很多.a库了,include和lib都加到了MinGW的系统变量里面了
5.所有的工具都成功安装,并且可以通过编写Makefile文件成功编译C/C++程序,运行成功

现在我的问题是:
下面的程序不能编译链接:
#include <Qt/qapplication.h>
#include <Qt/qlabel.h>
int main(int argc,char * argv[]){
QApplication app(argc, argv);
QLabel *label = new QLabel("Hello Qt!");
label->show();

return app.exec();
}

编译一直不成功,我是写自己Makefile的,没有用qmake来自动生成Makefile
现在该如何解决?
还请各位高手说说不是有qmake工具手动编写qt gui程序的具体步骤,就是像写普通C++程序一样,只是加入了一下include和lib而已。
...全文
858 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
老邓 2009-03-09
  • 打赏
  • 举报
回复
集成工具还是很高效的。
kwclhit 2009-02-17
  • 打赏
  • 举报
回复
最主要的是我不想使用‘所见即所得’的方式来开发程序,我想全部使用make来开发,很喜欢这样,不要什么集成开发工具
kwclhit 2009-02-17
  • 打赏
  • 举报
回复
我不想使用qmake,我想直接用MinGW的make完成任务,不知道头文件和lib引入是否有问题,但是在我的程序里面引入上面两个头文件是没有错误的,只是类的定义QApplication的变量出错,指示无法连接:
D:/MyWorkSpace/CMakePro/src/cplus_src/CMakePro.cpp:58: undefined reference to `_imp___ZN12QApplicationC1ERiPPci'
D:/MyWorkSpace/CMakePro/o_file/CMakePro.o: In function `main':
C:/Qt/4.4.3/include/QtCore/../../src/corelib/tools/qstring.h:386: undefined reference to `_imp___ZN7QString16fromAscii_helperEPKci'
D:/MyWorkSpace/CMakePro/o_file/CMakePro.o: In function `main':
C:/Qt/4.4.3/include/QtCore/../../src/corelib/global/qglobal.h:1911: undefined reference to `_imp___ZN6QLabelC1ERK7QStringP7QWidget6QFlagsIN2Qt10WindowTypeEE'
D:/MyWorkSpace/CMakePro/o_file/CMakePro.o: In function `main':
D:/MyWorkSpace/CMakePro/src/cplus_src/CMakePro.cpp:63: undefined reference to `_imp___ZN12QApplication4execEv'
D:/MyWorkSpace/CMakePro/src/cplus_src/CMakePro.cpp:63: undefined reference to `QApplication::~QApplication()'
D:/MyWorkSpace/CMakePro/src/cplus_src/CMakePro.cpp:63: undefined reference to `QApplication::~QApplication()'
D:/MyWorkSpace/CMakePro/o_file/CMakePro.o: In function `main':
C:/Qt/4.4.3/include/QtCore/../../src/corelib/tools/qstring.h:825: undefined reference to `_imp___ZN7QString4freeEPNS_4DataE'
C:/Qt/4.4.3/include/QtCore/../../src/corelib/tools/qstring.h:825: undefined reference to `_imp___ZN7QString4freeEPNS_4DataE'
taodm 2009-02-17
  • 打赏
  • 举报
回复
用wx多好。wxdevcpp直接支持控件拖动。
kwclhit 2009-02-17
  • 打赏
  • 举报
回复
我不想使用qmake,我想直接用MinGW的make完成任务,不知道头文件和lib引入是否有问题,但是在我的程序里面引入上面两个头文件是没有错误的,只是类的定义QApplication的变量出错,指示无法连接:
D:/MyWorkSpace/CMakePro/src/cplus_src/CMakePro.cpp:58: undefined reference to `_imp___ZN12QApplicationC1ERiPPci'
D:/MyWorkSpace/CMakePro/o_file/CMakePro.o: In function `main':
C:/Qt/4.4.3/include/QtCore/../../src/corelib/tools/qstring.h:386: undefined reference to `_imp___ZN7QString16fromAscii_helperEPKci'
D:/MyWorkSpace/CMakePro/o_file/CMakePro.o: In function `main':
C:/Qt/4.4.3/include/QtCore/../../src/corelib/global/qglobal.h:1911: undefined reference to `_imp___ZN6QLabelC1ERK7QStringP7QWidget6QFlagsIN2Qt10WindowTypeEE'
D:/MyWorkSpace/CMakePro/o_file/CMakePro.o: In function `main':
D:/MyWorkSpace/CMakePro/src/cplus_src/CMakePro.cpp:63: undefined reference to `_imp___ZN12QApplication4execEv'
D:/MyWorkSpace/CMakePro/src/cplus_src/CMakePro.cpp:63: undefined reference to `QApplication::~QApplication()'
D:/MyWorkSpace/CMakePro/src/cplus_src/CMakePro.cpp:63: undefined reference to `QApplication::~QApplication()'
D:/MyWorkSpace/CMakePro/o_file/CMakePro.o: In function `main':
C:/Qt/4.4.3/include/QtCore/../../src/corelib/tools/qstring.h:825: undefined reference to `_imp___ZN7QString4freeEPNS_4DataE'
C:/Qt/4.4.3/include/QtCore/../../src/corelib/tools/qstring.h:825: undefined reference to `_imp___ZN7QString4freeEPNS_4DataE'
zqz981 2009-02-16
  • 打赏
  • 举报
回复
我直接使用了 qmake生成的makefile,
但是,我自己修改了各种路径。
楼主的代码来自书本的例子,没有错误。那么肯定是你的库的路径设置有问题或者是你的编译的时候没有制定库的路径。
出现的错误提示是什么?贴出来看看啊
fox000002 2009-02-16
  • 打赏
  • 举报
回复
参考 qmake 生成的 Makefile

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧