Linux下Qt的make编译出现大量错误
源代码:#include<QApplication>#include<QPushButton>intmain(intargc,char*argv[]){QApplicat...
源代码:
#include<QApplication>
#include<QPushButton>
int main(int argc,char* argv[])
{
QApplication app(argc,argv);
QPushButton b("Hello,world");
b.show();
QObject::connect(&b,SIGNAL(clicked()),&app,SIGNAL(quit()));
return app.exec();
}
就是刚开始学习Qt的 之前用的windows下的一切还蛮好的,就是在Linux下安装之后,环境也都配好了,cpp文件的Makefile文件都生成了,简单的helloworld的程序(这个程序自身觉得不应该出问题的)make编译生成可执行文件的时候就出错了,希望路过知道的可以多多给予提示……谢谢 展开
#include<QApplication>
#include<QPushButton>
int main(int argc,char* argv[])
{
QApplication app(argc,argv);
QPushButton b("Hello,world");
b.show();
QObject::connect(&b,SIGNAL(clicked()),&app,SIGNAL(quit()));
return app.exec();
}
就是刚开始学习Qt的 之前用的windows下的一切还蛮好的,就是在Linux下安装之后,环境也都配好了,cpp文件的Makefile文件都生成了,简单的helloworld的程序(这个程序自身觉得不应该出问题的)make编译生成可执行文件的时候就出错了,希望路过知道的可以多多给予提示……谢谢 展开
4个回答
展开全部
你上面的问题是的链接库的和路径没设置好
export QTDIR=/home/lin/hisi/qt-embedded-4.5.2
export PATH=$QTDIR/bin:$PATH
export TSLIB_CONSOLEDEVICE=none
export LD_LIBRARY_PATH=$T_ROOT/lib:$QTDIR/lib
类似上面,把相应的路径修改下,在终端中运行,然后编译就可以通过了
不过建议:
linux下,可以安装个QT Creator开发工具 ,这样子可以方便很多
export QTDIR=/home/lin/hisi/qt-embedded-4.5.2
export PATH=$QTDIR/bin:$PATH
export TSLIB_CONSOLEDEVICE=none
export LD_LIBRARY_PATH=$T_ROOT/lib:$QTDIR/lib
类似上面,把相应的路径修改下,在终端中运行,然后编译就可以通过了
不过建议:
linux下,可以安装个QT Creator开发工具 ,这样子可以方便很多
展开全部
因为你是在终端下面编译的,WIN下,你是在Qt Creator编译的对吧。。。
你的终端的ENV没有设置好。。
还有就是楼上那同学说的,quit()是槽,不是信号。。。
你的终端的ENV没有设置好。。
还有就是楼上那同学说的,quit()是槽,不是信号。。。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-10-10
展开全部
同在linux下, Qt 4.8按同样步骤执行,没有上述错误。
1. 检查Qt安装是否正确:
cd /usr/local/Trolltech/Qt-4.7.4/include/QtGui
看是否有名字为QApplication的文件,内容应该是:
#include "qapplication.h"
2。代码写错,第二个SIGNAL(quit())改成SLOT(quit())
1. 检查Qt安装是否正确:
cd /usr/local/Trolltech/Qt-4.7.4/include/QtGui
看是否有名字为QApplication的文件,内容应该是:
#include "qapplication.h"
2。代码写错,第二个SIGNAL(quit())改成SLOT(quit())
追问
Qt4版是可以这么写的。。。
追答
一点没错,如果你说得是.h, QT4版就是应该这样写的,不加h。但是你SLOT写成SIGNAL是错的。
(实际上qt是通过用QApplication这样一个文件做为桥梁, 实际include .h, 代码中无须写.h. )。
出现找不到错误,最直接的原因就是在这里。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-10-12
展开全部
undefined reference to 'XXX'是没有链接相应的库造成的错误,添加这个库就可以了,也可能是路径不正确造成的。
PS:楼主如果附上平台、背景及操作过程等等信息的话,效果可能会更好一些,因为只看到一大堆错误信息,实在不知道确切的问题。
PS:楼主如果附上平台、背景及操作过程等等信息的话,效果可能会更好一些,因为只看到一大堆错误信息,实在不知道确切的问题。
追问
下次记着了 嘿嘿
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询