CMakeLists怎么写
时间: 2023-10-26 08:13:52 浏览: 75
CMakeLists.txt是CMake的配置文件之一,用于指导CMake构建项目。以下是一个简单的CMakeLists.txt示例:
```cmake
# 设置项目名称和版本号
project(MyProject VERSION 1.0)
# 添加可执行文件
add_executable(MyExecutable main.cpp)
# 添加库文件
add_library(MyLibrary STATIC library.cpp)
# 链接库文件到可执行文件
target_link_libraries(MyExecutable MyLibrary)
```
其中,第一行设置了项目名称和版本号;第三行添加了一个可执行文件(使用main.cpp作为入口);第五行添加了一个静态库文件(使用library.cpp作为源文件);最后一行将库文件链接到可执行文件中。
这只是一个简单的例子,你可以根据自己的项目需求修改CMakeLists.txt文件。
相关问题
多文件的cmakeLists怎么写
在一个项目中,通常会存在多个源文件,此时我们需要编写一个多文件的 CMakeLists.txt 文件来构建整个项目。
以下是一个示例 CMakeLists.txt 文件,用于构建一个包含多个源文件的 C++ 项目:
```cmake
cmake_minimum_required(VERSION 3.10)
# 设置项目名称和版本号
project(MyProject VERSION 1.0)
# 添加可执行文件,并指定源文件
add_executable(MyProject main.cpp foo.cpp bar.cpp)
# 添加头文件搜索路径
include_directories(include)
# 添加库搜索路径
link_directories(lib)
# 添加库文件,可以是静态库或动态库
target_link_libraries(MyProject mylib)
# 设置编译选项
set(CMAKE_CXX_FLAGS "-Wall -Wextra -Werror")
```
上述示例中,我们通过 add_executable() 添加了一个可执行文件,并将多个源文件作为参数传递给该函数。使用 include_directories() 和 link_directories() 函数,我们指定了头文件和库文件的搜索路径。使用 target_link_libraries() 函数,我们将库文件链接到可执行文件中。
最后,我们使用 set() 函数设置了编译选项,这里将所有的警告都转化为错误。
请注意,这只是一个示例,实际的 CMakeLists.txt 文件可能会更加复杂,特别是涉及到多个目录和依赖项的情况。
这个demo的cmakelists怎么写
下面是一个可能的 CMakeLists.txt 文件示例:
```
cmake_minimum_required(VERSION 3.0)
project(chitgpt-demo)
# 设置编译选项
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
# 添加依赖库
find_package(Boost REQUIRED COMPONENTS system)
find_package(Threads REQUIRED)
# 添加源代码
add_executable(chitgpt-demo main.cpp)
# 链接依赖库
target_link_libraries(chitgpt-demo ${Boost_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
```
在这个示例中,我们使用 CMake 3.0 作为最低版本,设置了编译选项和依赖库,同时添加了一个名为 `main.cpp` 的源代码文件,并将其编译为一个名为 `chitgpt-demo` 的可执行文件。最后,我们链接了依赖库,包括 Boost 的 system 组件和线程库。
当然,具体的 CMakeLists.txt 文件内容还需要根据你的项目具体情况进行调整。
阅读全文