首页 > 代码库 > QT开发--《Beginning Linux Programming》4th Edition
QT开发--《Beginning Linux Programming》4th Edition
最近在学习《Beginning Linux Programming》4th Edition的时候,将下面的例子代码键入
#include<qapplication.h> #include<qmainwindow.h> int main(int argc,char* args[]) { QApplication app(argc,args); QMainWindow *window=new QMainWindow(); app.setMainWidget(window); window->show(); return app.exec(); }
按照 $g++ -o QWindow QWindow.cpp -I$QTDIR/include -L$QTDIR/lib -lqui 编译方式出现了如下的错误:
/usr/bin/ld: /tmp/ccizdZj7.o: undefined reference to symbol ‘_ZN7QWidget14setFocusPolicyENS_11FocusPolicyE‘ /usr/bin/ld: note: ‘_ZN7QWidget14setFocusPolicyENS_11FocusPolicyE‘ is defined in DSO /usr/lib64/qt-3.3/lib/libqt-mt.so.3 so try adding it to the linker command line /usr/lib64/qt-3.3/lib/libqt-mt.so.3: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status
根据提示,直接将 /usr/lib64/qt-3.3/lib/libqt-mt.so.3作为输入,则可以正常编译成功。
$ g++ -o QWindow QWindow.cpp -I$QTDIR/include -L$QTDIR/lib -lqui $QTDIR/lib/libqt-mt.so.3
PS:在阅读本书的过程中,在中文版第四版的p427:
$./thread3a的输出部分:
FAST输入后,应该输出的是两句“You input 7 characters”
You input 7 characters
You input 7 characters
而不是书中的三句:
You input 7 characters
You input 7 characters
You input 7 characters
正在学习linux相关的知识,希望大家一起交流,共同进步。。。。
QT开发--《Beginning Linux Programming》4th Edition
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。