在使用iar,keil写单片机时,都可以先#define一个变量,然后根据变量的不同值编译不同的代码

在Qt里也可以这样,针对嵌入式的程序,一般是会在X86上编译,Debug,然后再部署到ARM去跑,这样,X86与ARM之间,可能就会有一些差异,如不同的平台,调用不同的库,这样就可以先#define一个变量,再根据变量去自动包含需要编译的东西。

首先在Project settings里增加build 参数DEFINES:如我增加专门针对ARM板上跑的参数DEFINES+=ARM

Qt 根据不同平台的条件编译

在源文件里就可以直接使用条件判断

#ifdef ARM
    // arm use only
    QWSServer::setCursorVisible(false);
#endif

在pro文件里也可以使用:


if(contains(DEFINES,ARM)){
    message("compile for arm")
    LIBS += -L../armlib -lfpp
}else{
    message("compile for x86")
    LIBS += -L../x86lib -lfpp
}

相关文章:

  • 2021-12-09
  • 2021-06-25
  • 2021-06-19
  • 2021-05-06
  • 2021-06-11
  • 2022-12-23
  • 2021-08-15
  • 2021-08-29
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-10-04
  • 2021-05-17
  • 2022-01-19
  • 2022-02-06
  • 2021-08-21
相关资源
相似解决方案