3、一個(gè)簡單的 CMake 項(xiàng)目示例(Hello World!)
假設(shè)你有一個(gè)用于計(jì)算數(shù)字平方根的 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)上述兩行是生成一個(gè)可執(zhí)行文件所需的最少指令。理論上,我們還應(yīng)該指定 CMake 的最低版本號,省略 CMake 會默認(rèn)使用某個(gè)版本(暫時(shí)跳過這部分)。
嚴(yán)格來說,project 指令并非必需,但我們還是保留它。所以最重要的代碼行是: add_executable(tutorial tutorial.cxx)這行代碼指定了目標(biāo)二進(jìn)制文件 tutorial 以及源文件 tutorial.cxx。