qt undefined reference to linux
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt undefined reference to linux相关的知识,希望对你有一定的参考价值。
我想编译一个helloworld,qmake -project和qmake都通过来就是最后的make提示了一大堆错误
[root@CentOS6-wdq workspace]# make
g++ -c -pipe -Wall -W -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -fno-strict-aliasing -DQT_NO_DEBUG -DQT_SHARED -DQT_TABLET_SUPPORT -DQT_THREAD_SUPPORT -I/usr/lib/qt-3.3/mkspecs/default -I. -I. -I/usr/lib/qt-3.3/include -o HelloWorld.o HelloWorld.cpp
g++ -o workspace HelloWorld.o -L/usr/lib/qt-3.3/lib -lqt-mt -lXext -lX11 -lm
HelloWorld.o: In function `main':
/home/wangdq/workspace/HelloWorld.cpp:5: undefined reference to `QApplication::QApplication(int&, char**, int)'
HelloWorld.o: In function `QString':
/usr/include/QtCore/qstring.h:413: undefined reference to `QString::fromAscii_helper(char const*, int)'
HelloWorld.o: In function `main':
/home/wangdq/workspace/HelloWorld.cpp:6: undefined reference to `QLabel::QLabel(QString const&, QWidget*, QFlags<Qt::WindowType>)'
HelloWorld.o: In function `~QString':
/usr/include/QtCore/qstring.h:869: undefined reference to `QString::free(QString::Data*)'
/usr/include/QtCore/qstring.h:869: undefined reference to `QString::free(QString::Data*)'
collect2: ld 返回 1
make: *** [workspace] 错误 1
helloworld.cpp是这么写的:
#include <QtGui/QApplication>
#include <QtGui/QLabel>
int main(int argc,char **argv)
QApplication app(argc,argv);
QLabel *label=new QLabel("Hello World!!!");
label->show();
return app.exec();
找了半天别人说的目录名不能有qt但是我这目录名也没有qt啊,求指导啊!!~~
对了我的centos装了两个qt分别qt3.3和qt4是不是冲突了?还有就是怎么把qt3.3给删了啊??
仅作参考
参考技术B 新手还是安装nokia官方的qtsdk,用qtcreator写程序、编译调试。
你去下个完整的qtsdk,用qtsdk里面的控制台编译。
http://qt.nokia.com/downloads
选择Offline installer ,linux系统的。 参考技术C 估计是你的路径设置没有设对,你再检查一遍你的路径设置。我的qt设置了两个环境变量,一个是/etc/profile,一个是/root/.bashrc. 参考技术D 配置文件
QT += gui
用qt484编译程序的时候,报错误 libQtGui.so: undefined reference to `FcFreeTypeQueryFace'
用qt484编译程序的时候,最后生成可执行文件的时候报 libQtGui.so: undefined reference to `FcFreeTypeQueryFace',我用ldd -r ibQtGui.so.4.8.4 发现依赖的动态链接库都能找到,就是报如下错误
undefined symbol: FT_GlyphSlot_Embolden (./libQtGui.so.4.8.4)
undefined symbol: FcFreeTypeQueryFace (./libQtGui.so.4.8.4)。
不知道这两个函数跟哪个动态库关联。
以上是关于qt undefined reference to linux的主要内容,如果未能解决你的问题,请参考以下文章
Qt的“undefined reference to `vtable for”错误解决(手动解决,加深理解)
Qt错误:error: undefined reference to `vtable for 类名'
win7下qt error: undefined reference to `_imp__getnameinfo@28'解决
Qt开发编译时报"undefined reference to"问题的解决方案
用qt484编译程序的时候,报错误 libQtGui.so: undefined reference to `FcFreeTypeQueryFace'
Qt sqlite3.o: undefined reference to symbol ‘dlclose@@GLIBC_2.2.5‘