我想添加到CMakeLists.txt
原始字符串宏等价于:
#if defined(Q_OS_WIN)
#define COMMPORT_NAME R"(\\.\COM1)"
#elif defined(Q_OS_UNIX)
#define COMMPORT_NAME "/dev/ttyS0"
#else
#error "platform not supported"
#endif
我尝试了以下方法:
if(WIN32)
target_compile_definitions(${PROJECT_NAME} PRIVATE -DCOMMPORT_NAME="R"(\\.\COM1)"")
elseif(UNIX)
target_compile_definitions(${PROJECT_NAME} PRIVATE -DCOMMPORT_NAME="/dev/ttyS0")
else()
message(FATAL_ERROR "platform not supported")
endif()
但我收到一个错误:
path/to/project/CMakeLists.txt:68 处的 CMake 警告(dev):第 85 列的 cmake 代码中的语法警告
参数没有用空格与前面的标记分隔。此警告适用于项目开发人员。使用 -Wno-dev 来抑制它。
是否可以在 bash 中使用某种引号,例如 '' 来防止发生上述错误?