我是 CMake 的新手,我尝试在我的根 CMakeLists.txt 中执行此操作:
set(HAVE_MY_SDK OFF)
if(IS_DIRECTORY "${PROJECT_SOURCE_DIR}../Libs/A")
if(EXISTS "${PROJECT_SOURCE_DIR}../Libs/A/CMakeLists.txt")
set (HAVE_MY_SDK ON)
endif()
endif()
Run Code Online (Sandbox Code Playgroud)
目前,CMake的只是避免指令,留下HAVE_MY_SDK一个OFF状态。是否可以使用 CMake 检查更高级别的目录?或者也许用间接方法来做
我编写这段代码是为了知道我的输入是否是二的倍数
\n\n#include <stdio.h>\n#include <stdlib.h>\n#include <unistd.h>\n\nbool main(int ac, char **av)\n{\n if (ac == 2)\n {\n int nb = atoi(av[1]);\n (((nb / 2) * 2) != nb) ? false : true; \n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n但海湾合作委员会正在返回我这个:
\n\ntest.c:5:1: error: unknown type name \xe2\x80\x98bool\xe2\x80\x99\nbool main(int ac, char **av)\n^\ntest.c: In function \xe2\x80\x98main\xe2\x80\x99:\ntest.c:10:32: error: \xe2\x80\x98false\xe2\x80\x99 undeclared (first use in this function)\n (((nb / 2) * 2) != nb) ? false : true;\n ^\ntest.c:10:32: note: each undeclared identifier is reported only once for each function it …Run Code Online (Sandbox Code Playgroud)