附上常见的QT问题:
一、链接路径问题
如果在调用SDK的QT编译过程中发现无法链接-l**sdk等链接错误,并出现collect2:ld returned 1 exit status错误,那是因为编译路径使用的是绝对路径,应在QT Creator中的Projects中将General的Shadow build的选项去掉。
二、qtcreator如何调入-lpthread参数?
方法是:在多线程那个项目的 .pro文件 中添加:LIBS += -lpthread 。
三、 .pro:80: Extra characters after test expressio
Check the .pro file. Sometimes it's because you don't have a blackslash at the end of one of the lines that isn't last:
HEADERS += Qt/mainwindow.h \
Qt/MPrintableWidget.h \
Qt/MPrintableWidgetGroup.h # Oooops forgot the \ here
Qt/MFixedSizeDialog.h \
Qt/MScreenPage.h
Every line here except the bottom one needs to end in a backslash.
四、如何静态编译Qt程序
- 比如现在有一个test.cpp文件
- 生成.pro文件
qmake -project
- 修改.pro文件,在里面加上
CONFIG+=static
- 生成Makefile文件
qmake
- 修改Makefile文件,在CXXflags选项后面加上 -static
- 生成可执行二进制文件
make
- 好啦,至此,可以看到可执行文件test啦,可以用ls -lh查看它的大小,一般的代码会有十几兆。
五、Qt环境设置
文件从window上传到Ubuntu后会显示乱码,原因是因为ubuntu环境设置默认是utf-8,Windows默认都是GBK.
Windows环境下,Qt Creator,菜单->工具->选项->文本编辑器->行为->文件编码:
默认编码:System(简体中文windows系统默认指的是GBK编码,即下拉框选项里的GBK/windows-936-2000/CP936/MS936/windows-936)
解决Qt中文乱码以及汉字编码的问题(UTF-8/GBK)
网友评论