常见QT编程问题

附上常见的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程序

  1. 比如现在有一个test.cpp文件
  2. 生成.pro文件
    qmake -project
  3. 修改.pro文件,在里面加上
    CONFIG+=static
  4. 生成Makefile文件
    qmake
  5. 修改Makefile文件,在CXXflags选项后面加上 -static
  6. 生成可执行二进制文件
    make
  7. 好啦,至此,可以看到可执行文件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)

你可能感兴趣的:(常见QT编程问题)