• 3575阅读
  • 2回复

linux下Qt4 的编译错误 [复制链接]

上一主题 下一主题
离线tzg_dzq_bbs
 
只看楼主 倒序阅读 楼主  发表于: 2009-07-29
— 本帖被 XChinux 从 论坛公告栏 移动到本区(2009-07-30) —
工具:kdevelop
工程创建步骤:工程|新建工程|C++|QMake project | Basic Qt4 Application
工程名:hello
工程选项 | 自定义选项:qmake-qt4和 designer-qt4的路径是:/usr/lib/qt4/bin
其他配置保持默认。
--------------------------------------
源文件:
#include<QtGui/QApplication>
#include<QtGui/QWidget>
#include<QtGui/QLabel>
#include<QtCore/QTextCodec>
#include<QCoreApplication>


int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));
    QWidget * pwidget = new QWidget;
    QLabel   label(pwidget);
    label.setText(QObject::tr("one world, one dream!"));
    pwidget->show();
    return  app.exec();
}

--------------------------
运行qmake结果如下:
cd '/media/disk-1/Study/debuglinux/qt/seven/src' && LC_MESSAGES="C" LC_CTYPE="C" /usr/bin/qmake-qt4 src.pro
*** 成功 ***
------------------------------
构建工程  结果如下:
cd '/media/disk-1/Study/debuglinux/qt/seven/src' && LC_MESSAGES="C" LC_CTYPE="C" gmake
正在连接 ../bin/seven (g++)
main.o: In function `main':
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:10: undefined reference to `QApplication::QApplication(int&, char**, int)'
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:12: undefined reference to `QWidget::QWidget(QWidget*, QFlags<Qt::WindowType>)'
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:13: undefined reference to `QLabel::QLabel(QWidget*, QFlags<Qt::WindowType>)'
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:14: undefined reference to `QLabel::setText(QString const&)'
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:16: undefined reference to `QApplication::exec()'
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:16: undefined reference to `QLabel::~QLabel()'
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:16: undefined reference to `QApplication::~QApplication()'
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:16: undefined reference to `QApplication::~QApplication()'
/media/disk-1/Study/debuglinux/qt/seven/src/main.cpp:16: undefined reference to `QLabel::~QLabel()'
collect2: ld returned 1 exit status
gmake: *** [../bin/seven] Error 1
*** 退出状态:2 ***
---------------------------
为什么这样???
我是独一无二的
离线zhang_bi
只看该作者 1楼 发表于: 2009-07-30
“工程选项 | 自定义选项:qmake-qt4和 designer-qt4的路径是:/usr/lib/qt4/bin ”
添加完整  ““工程选项 | 自定义选项:qmake-qt4和 designer-qt4的路径是:/usr/lib/qt4/bin /qmake”和“:/usr/lib/qt4/bin /Designer” 试一试看。
离线tzg_dzq_bbs
只看该作者 2楼 发表于: 2009-07-30
““工程选项 | 自定义选项:qmake-qt4和 designer-qt4的路径是:/usr/lib/qt4/bin /qmake”和“:/usr/lib/qt4/bin /Designer”
按照以上设制为:/usr/lib/qt4/bin /qmake-qt4和“:/usr/lib/qt4/bin /Designer-qt4

错误一样。
我是独一无二的
快速回复
限100 字节
 
上一个 下一个