日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用CmakeLists应该知道的一些知识

發布時間:2023/12/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用CmakeLists应该知道的一些知识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Cmake使用方法

命令:ccmake directory(含有CmakeLists.txt)? ? ? ? ? ? ?#配置CmakeLists.txt里面相關的變量,一般不需要

命令:cmake directory(含有CmakeLists.txt)? ? ? ? ? ? ??#根據CmakeLists.txt生成Makefile文件

命令:Make? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #執行Makefile

基本結構

依賴CMakeLists.txt文件,項目主目標一個,主目錄中可指定包含的子目錄

在項目CMakeLists.txt中使用project指定項目名稱,add_subdirectory添加子目錄

子目錄CMakeLists.txt將從父目錄CMakeLists.txt繼承設置

Cmakelists文件命令

指定編譯包含源文件

方法1:

add_library(demo demo.cpp test.cpp util.cpp)

方法2:先搜索文件夾在添加文件

aux_source_directory(. SRC_LIST) # 搜索當前目錄下的所有.cpp文件 add_library(demo ${SRC_LIST})

設置編譯輸出類型

add_executable(demo demo.cpp) # 生成可執行文件 exe 可執行 add_library(common STATIC util.cpp) # 生成靜態庫 .lib .a add_library(common SHARED util.cpp) # 生成動態庫或共享庫 .dll .so

設置鏈接庫搜索目錄

link_directories(${CMAKE_CURRENT_SOURCE_DIR}/libs)

列表變量操作

List(關鍵字 <list> …<index>…<element>…

關鍵字

? LENGTH    ??    ? 返回list長度

? GET      ???    ? 返回listindexelementvalue

? APPEND    ???    ? 添加elementlist

? FIND      ??    返回listelementindex,沒有找到返回-1

? INSERT         ? element插入到listindex位置

? REMOVE_ITEM     ? list中刪除某個element

? REMOVE_AT      ? list中刪除指定indexelement

? REMOVE_DUPLICATES?????? ? list中刪除重復的element

? REVERSE         將list的內容反轉

? SORT          ? list按字母順序排序

查找安裝好的庫

find_package(name??REQUIRED)

REQUIRED ? 找不到name就報錯停止cmake處理

執行../share/cmake-3.16/Modules下Find<name>.cmake文件

CMAKE_MODULE_PATH

目錄列表,分號分割,find_packageinclude命令會使用。默認為空,由工程設置

執行一cpp文件(main

file(READ “…/vtkRequireLargeFilesSupport.cxx" VTK_REQUIRE_LARGE_FILE_SUPPORT_FILE) check_cxx_source_runs("${VTK_REQUIRE_LARGE_FILE_SUPPORT_FILE}"VTK_REQUIRE_LARGE_FILE_SUPPORT)

Cmake參考文檔路徑

https://cmake.org/cmake/help/latest/index.html

總結

以上是生活随笔為你收集整理的使用CmakeLists应该知道的一些知识的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。