• 7239阅读
  • 5回复

QT4编译找不到头文件,急求解决方法?新手上路 [复制链接]

上一主题 下一主题
离线feier1029
 
只看楼主 倒序阅读 楼主  发表于: 2009-06-08
编译example里面的calculatorbuilder例子,结果出现了问题
#include <QtUiTools>
#include <QtGui>

#include "calculatorform.h"

CalculatorForm::CalculatorForm(QWidget *parent): QWidget(parent)
{
  QUiLoader loader;

  QFile file(":/forms/calculatorform.ui");
  file.open(QFile::ReadOnly);
  QWidget *formWidget = loader.load(&file, this);
  file.close();

  ui_inputSpinBox1 = qFindChild<QSpinBox*>(this, "inputSpinBox1");
  ui_inputSpinBox2 = qFindChild<QSpinBox*>(this, "inputSpinBox2");
  ui_outputWidget = qFindChild<QLabel*>(this, "outputWidget");

  QMetaObject::connectSlotsByName(this);

  QVBoxLayout *layout = new QVBoxLayout;
  layout->addWidget(formWidget);
  setLayout(layout);

  setWindowTitle(tr("Calculator Builder"));
}

void CalculatorForm::on_inputSpinBox1_valueChanged(int value)
{
  ui_outputWidget->setText(QString::number(value + ui_inputSpinBox2->value()));
}

void CalculatorForm::on_inputSpinBox2_valueChanged(int value)
{
  ui_outputWidget->setText(QString::number(value + ui_inputSpinBox1->value()));
}

报错:
找不到头文件
mingw32-make -f Makefile.Release
mingw32-make[1]: Entering directory `C:/Qt/Samples/calculatorbuilder'
g++ -c -O2 -O2 -frtti -fexceptions -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_D
LL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN
-I"C:/Qt/include/QtCore" -I"C:/Qt/include/QtGui" -I"C:/Qt/include" -I"." -I"C:/
Qt/include/ActiveQt" -I"tmp\moc\release_shared" -I"." -I"C:/Qt/mkspecs/win32-g++
" -o tmp\obj\release_shared\calculatorform.o calculatorform.cpp
calculatorform.cpp:24:21: QtUiTools: No such file or directory
calculatorform.cpp: In constructor `CalculatorForm::CalculatorForm(QWidget*)':
calculatorform.cpp:31: error: `QUiLoader' undeclared (first use this function)
calculatorform.cpp:31: error: (Each undeclared identifier is reported only once
for each function it appears in.)
calculatorform.cpp:31: error: expected `;' before "loader"
calculatorform.cpp:35: error: `loader' undeclared (first use this function)
mingw32-make[1]: *** [tmp\obj\release_shared\calculatorform.o] Error 1
mingw32-make[1]: Leaving directory `C:/Qt/Samples/calculatorbuilder'
mingw32-make: *** [release] Error 2
在另一个帖子中,版主说要改.pro文件,可不知道如何具体去改,试了几次都不行。
问一下,由于在include里面看到有QtUiTools在了,问什么会出现这个问题?
离线gvim
只看该作者 1楼 发表于: 2009-06-08
CONFIG += uitools

在.pro里加上这句试试。
Qt,Qt! 分享Cute之Qt体验
欢迎访问 http://www.cuteqt.com
欢迎订阅 http://www.cuteqt.com/?feed=rss2

离线feier1029
只看该作者 2楼 发表于: 2009-06-08
今天下午用另一台机器却可以正常运行,晕了,我这台也运行了不少程序了。为什么会出现这种问题?还望高手指点哪儿出了问题?
离线feier1029
只看该作者 3楼 发表于: 2009-06-08
我的编译环境是mingw+eclipse+qt4.3.3
离线gvim
只看该作者 4楼 发表于: 2009-06-08
引用第2楼feier1029于2009-06-08 19:54发表的  :
今天下午用另一台机器却可以正常运行,晕了,我这台也运行了不少程序了。为什么会出现这种问题?还望高手指点哪儿出了问题?


CONFIG += uitools
在.pro里加上这句试试。

有没有试过这种方法?重新qmake
Qt,Qt! 分享Cute之Qt体验
欢迎访问 http://www.cuteqt.com
欢迎订阅 http://www.cuteqt.com/?feed=rss2

离线feier1029
只看该作者 5楼 发表于: 2009-06-09
引用第4楼gvim于2009-06-08 20:21发表的  :
CONFIG += uitools
在.pro里加上这句试试。
.......



谢谢,这样可以了。能说明一下,是什么原因么?
快速回复
限100 字节
 
上一个 下一个