3、一个简单的 CMake 项目示例(Hello World!)
假设你有一个用于计算数字平方根的 C++ 源文件。 tutorial.cxx // A simple program that computes the square root of a number#include #include // TODO 5: Remove this line#include #include
// TODO 11: Include TutorialConfig.h
int main(int argc, char* argv[]){ if (argc 2) { // TODO 12: Create a print statement using Tutorial_VERSION_MAJOR // and Tutorial_VERSION_MINOR std::cout "Usage: " 0] " number" std::endl; return 1; }
// convert input to double // TODO 4: Replace atof(argv[1]) with std::stod(argv[1]) const double inputValue = atof(argv[1]);
// calculate square root const double outputValue = sqrt(inputValue); std::cout "The square root of " " is " std::endl; return 0;}CMakeLists.txt project(Tutorial)add_executable(tutorial tutorial.cxx)上述两行是生成一个可执行文件所需的最少指令。理论上,我们还应该指定 CMake 的最低版本号,省略 CMake 会默认使用某个版本(暂时跳过这部分)。
严格来说,project 指令并非必需,但我们还是保留它。所以最重要的代码行是: add_executable(tutorial tutorial.cxx)这行代码指定了目标二进制文件 tutorial 以及源文件 tutorial.cxx。