• 10287阅读
  • 5回复

QT编译不成功,提示WinMain@16,请大家帮忙看看 [复制链接]

上一主题 下一主题
离线yeelone
 

只看楼主 倒序阅读 楼主  发表于: 2010-02-25
— 本帖被 XChinux 从 Qt新闻馆 移动到本区(2010-02-25) —
e:\Qt\2010.02.1\qt\lib/libqtmaind.a(qtmain_win.o): In function `WinMain@16':
C:\qt-greenhouse\Trolltech\Code_less_create_more\Trolltech\Code_less_create_more\Troll\4.6\qt\src\winmain/qtmain_win.cpp:131: undefined reference to `qMain(int, char**)'

刚学QT,看的是精通QT4编程。里面有一个例子。
例子是这样的:创建一个项目,名为mydialog
里面只有两个文件,一个logindlg.cpp,一个logindlg.h
logindlg.h:::
#ifndef LOGINDLG_H
#define LOGINDLG_H


#include <QtGui/QDialog>
class CLoginDlg:public QDialog
{
    Q_OBJECT
public:
    CLoginDlg(QWidget* = 0);
};

我不知道要如何解决,请大家帮帮忙
#endif // LOGINDLG_H



logindlg.cpp

#include "logindlg.h"
CLoginDlg::CLoginDlg(QWidget* parent)
    :QDialog(parent)
{
}
离线yeelone

只看该作者 1楼 发表于: 2010-02-25
感觉还是转战linux比较好,用windows真有点不大爽,而且QT的教程都是基于linux的,可惜我现在没有办法安装linux。回学校再说。
离线yeelone

只看该作者 2楼 发表于: 2010-02-25
知道原因 了。呆呆的看《精通QT4编程》,里面的代码就只是那样,但其实logindlg.cpp

#include "logindlg.h"
CLoginDlg::CLoginDlg(QWidget* parent)
    :QDialog(parent)
{
}

不可以这样写。
#include <QApplication>

#include "logindlg.h"
CLoginDlg::CLoginDlg(QWidget* parent)
    :QDialog(parent)
{
}
int main(int argc,char *argv[])
{
    QApplication app(argc, argv);
    return app.exec();

}
实际程序中,下面两行是比不可少的。
QApplication app(argc, argv);
return app.exec();


终究还是自己找到了答案。
离线XChinux

只看该作者 3楼 发表于: 2010-02-25
如果没有链接QtGui库,则需要在.pro文件中加
CONFIG += console
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线wd007

只看该作者 4楼 发表于: 2010-02-26
不必非得在Linux上学习Qt啊,很多人都在Win上使用Qt
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线hercules

只看该作者 5楼 发表于: 2010-02-26
缺少main()函数
我的QQ号:337396132
欢迎大家加我为好友,一起学习Qt
快速回复
限100 字节
 
上一个 下一个