QT在跨平台中使用很常见,既要开发基于ubuntu,又要开发基于windows情况下,可以使用条件编译来区分平台.

步骤如下:

1. 在pro文件中添加 DEFINES

eg:

# use linux or windows
DEFINES += RUN_ON_LINUX

 

2.   在pro文件中区分需要添加的头文件和源文件

if(contains(DEFINES, RUN_ON_LINUX)){       // 必须写在同一行
    SOURCES += posix_qextserialport.cpp
    HEADERS += posix_qextserialport.h
}else{
    SOURCES += win_qextserialport.cpp
    HEADERS += win_qextserialport.h
}

3.在源文件和头文件中添加条件选项

#ifdef RUN_ON_LINUX
#include "posix_qextserialport.h"
#else
#include "win_qextserialport.h"
#endif

这样即可.

相关文章:

  • 2021-10-27
猜你喜欢
  • 2022-02-19
  • 2021-05-28
  • 2021-11-05
  • 2021-06-04
  • 2021-07-13
  • 2022-12-23
  • 2021-10-10
相关资源
相似解决方案