QT程序编译出错记录(基于QTCreator)

时间:2024-04-13 08:03:09

  今天老大临时让我去解决一个QT程序的错误,由于我没接触过QT开发,导致虽然老大已经给我整了个可编译的环境,但是还是出现了各种状况。
  
  背景:在去接手老大给的项目之前,我先导出了QTCreator的demo工程(demo工程在如下图示2中找),然后我老大给的unbuntu环境下有两个QT程序编译环境,一份arm(4.7.4)的,一份x86(4.8.1)的(如下图1所示)。
  QT程序编译出错记录(基于QTCreator)
  

(图1)

  QT程序编译出错记录(基于QTCreator)
  
(图2)

  结果4.8.1的编译一点问题都没有,4.7.4的死活编译不过。通过持续的度娘之后,问题最终锁定在了编译路径。在qtcreator的右边栏选择project,进入项目相关配置界面,如图3所示。
  QT程序编译出错记录(基于QTCreator)
  
(图3)

  这里主要是两点需要注意,一个是 Build directory,另一个是红色框框出来的Additional arguments。默认情况下前者是我们打开项目的项目全路径,后者是空的,空的时候默认是编译x86的。那么问题就出在这,虽然我选择了4.7.4的编译环境,但是在执行qmake的时候执行的是qmake fortuneclient.pro -r -spec default,仍然是x86的环境。所以我改成如图三所示的-spec qws/linux-arm-g++,一切ok。
  
  当然这里还有个需要注意的,就是在选择Build directory的时候,如果想要编译两套,比如我一套arm,一套x86,那两次的目录就不能是同一个,因此我这里进行了区分,一个fortuneclient-4.7.4-realease,一个fortuneclient-4.8.1-debug。
  
  ps:这是一篇类日志记录,如果某位童鞋有问题,可以问我,但我不一定会,我是临时接手处理一个qt bug。如果哪位高手发现我这里有不到位的请帮忙指出来,本人感激不尽。