路过的四海朋友大家好:
言哥倾囊相授软件工程高频常用17条cmake金句如下:
- cmake_minimum_required(VERSION 3.2) //cmake最低版本要求
- set(CMAKE_VERBOSE_MAKEFILE on) //启用Makefile构建过程中的详细输出。
- include(GNUInstallDirs) //使用 GNUInstallDirs.cmake 定义目标安装的标准位置,具体位置:./sysroots/aarch64-poky-linux/usr/share/cmake-3.14/Modules/GNUInstallDirs.cmake
- find_package(ara-exec REQUIRED)//查找相应的库,同时让对应的变量生效 cmake位置,库位置:./sysroots/aarch64-poky-linux/usr/lib/cmake/ara-exec/ara-exec-config.cmake
- add_definitions(-DHAS_VSOMEIP_BINDING) //设置HAS_VSOMEIP_BINDING编译参数
- set(APP_NAME blower_server) //设置APP名字
- LIST(APPEND ARA_LIBRARIES socket) //在变量中增加socket
- file(GLOB_RECURSE aragen_srcs ${GEN_DEST}/*.cpp) //GLOB_RECURSE遍历匹配目录的所有文件以及子目录下面的文件将其保存到变量aragen_srcs。
- include_directories(\({GEN_DEST}/\){APP_NAME}/includes) //将指定目录添加到编译器的头文件搜索路径之下,指定的目录被解释成当前源码路径的相对路径。
- message(STATUS "GEN_DEST_PATH: ${GEN_DEST}")//相当于debug打印
- set(CMAKE_CXX_STANDARD 14) //设置C++标准是c++14
- aux_source_directory(libs/jsoncpp LIBS_JSONCPP) //查找在libs/jsoncpp路径下的所有源文件,并保存在LIBS_JSONCPP变量中
- link_directories(${Boost_LIBRARY_DIRS}) //添加库文件目录,相当于添加环境变量路径作用
- add_executable(blower_server ${ALL_COMPILE_SRC}) //先指定可执行文件,再连接相应的库
- target_link_libraries(blower_server ${CMAKE_THREAD_LIBS_INIT} ${ARA_LIBRARIES} ${ARAEXEC_LIBRARIES} ${ADAPTIVEPLATFORM_LIBRARIES})
- install(TARGETS blower_server RUNTIME DESTINATION opt/blower_server/bin)//RUNTIME 特指可执行目标二进制
- install(DIRECTORY //将生成的文件拷贝到opt文件夹中
${MANIFESTDIR}/blower_server
DESTINATION opt
)
看到这里,如果上述内容对你有益,请点赞、收藏加关注、留言评论,谢谢。
标签:cmake,DEST,blower,LIBRARIES,入门篇,CMAKE,server From: https://www.cnblogs.com/MirrorCore/p/17385142.html