From 5a50d4af186ee683d9002e1b357b3b015600fdf2 Mon Sep 17 00:00:00 2001 From: xiaojiazhu <9370822+xiaojiazhu@user.noreply.gitee.com> Date: Sun, 23 Jul 2023 02:56:24 +0000 Subject: [PATCH] update doc/cmake_exploitReport.md. Signed-off-by: xiaojiazhu <9370822+xiaojiazhu@user.noreply.gitee.com> --- doc/cmake_exploitReport.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/doc/cmake_exploitReport.md b/doc/cmake_exploitReport.md index e664c6a5..66d816db 100644 --- a/doc/cmake_exploitReport.md +++ b/doc/cmake_exploitReport.md @@ -27,3 +27,28 @@ ## 1.3 总结 该篇cmakelists.txt的主要用途是对ipc项目下xlog功能的显现文件的编译和汇总。 + +## 2.1 返回码管理库概述 +提供整个应用程序的返回码管理功能,例如:打印返回码的字符串含义。提供C语言接口,内部实现不限于C或者C++,形成项目内部唯一返回码标准。 + +## 2.2 功能介绍 +* 设置可执行文件的输出路径:`set(EXECUTABLE_OUTPUT_PATH ${EXEC_OUTPUT_PATH})`;`set(LIBRARY_OUTPUT_PATH ${LIBS_OUTPUT_PATH})` + +* 引入头文件目录:`include_directories`。`include_directories`表示引入头文件搜索路径,当工程要用到某个头文件的时候,就会去该路径下搜索。 + +* 开启自动编译:`set(CMAKE_AUTOMOC ON)` `set(CMAKE_INCLUDE_CURRENT_DIR ON)`. 这段代码开启了 CMake 的元对象编译器、界面编译器和资源编译器自动编译,这样当项目使用了包含元对象的文件、界面文件和资源文件时 CMake 可以自动检测并编译。 + +* 查找在./src路径下的所有源文件:`aux_source_directory(./src SRC_FILES)` 。 + +* 设置ReturnCode地址:`set(TARGET_NAME ReturnCode)`。根据提供的源文件创建一个叫ReturnCode的静态库。然后将目标文件与库文件进行链接:`target_link_libraries(${TARGET_NAME} Log)`。 + +## 2.3 返回码test +* 添加test文件到目录,本目录为测试代码目录,目录结构保持与源码目录结构一致。 + +* 在test各个文件夹里添加相对应的CMakeLists.txt文件,通过`add_subdirectory(utils)`添加与源码目录结构相对应的子文件夹。 + +* 在src文件夹下创建ReturnCodeTest.cpp,调用返回码管理接口。在根目录添加第三方库文件,存放需要用到的第三方库。 + +## 2.4 总结 +Cmake的语句都在CMakeLists.txt的文件中,Cmake运行之后就会产生想要的makefile文件,然后再直接make就可以编译出可执行程序。 +