cmake
命名變數
set(inc_dir /usr/local/include)
set(link_dir /usr/local/lib)
set(source_files main.cpp)
去**找標頭檔案 相當於gcc/clang 中的-i(i的大寫字母)引數
include_directories($) # 用${}引用變數
去**找庫檔案 .so .dll .dylib 相當於gcc 中的-l引數
link_directories($)
要鏈結的庫檔案的名字 相當於gcc中的-l(小寫的l)引數
target_link_libraries(test)
只寫庫名就可以,就是lib***.so的中間***的部分
也可以寫成下面這樣
target_link_libraries(test)
cmake_minimum_required(version 2.8.12)
project (main)
add_executable(main main.c)
include_directories(/usr/include/hello)
# 靜態鏈結庫
# target_link_libraries(main libhello.a)
# 動態鏈結庫
set(link_dir /usr/local/lib)
link_directories($)
target_link_libraries(main libhello.so)
拷貝動態鏈結庫的時候需要注意符號鏈結是否還在
使用CMake匯入第三方庫
使用cmakelists.txt 中間需要匯入第三方的庫當我們需要生成自己的庫的時候,下面介紹如何匯入第三方庫的具體步驟。cmake的配置資訊寫在了cmakelist.txt檔案中。在cmakelist.txt檔案裡,我們首先定義兩個變數inc dir和link dir,用來表示標頭檔案路徑和庫的路...
使用waf鏈結第三方庫
example.db3 include assertion.h backup.h column.h database.h exception.h executemany.h sqlitecpp.h statement.h transaction.h utils.h variadicbind.h li...
整個多個第三方的so庫
本來做了個objectbox的demo,執行正常 還有乙個文字掃瞄識別,也執行正常。但是識別模組所用的so檔案是armeabi的,objectbox專案的不需要自己去匯入。問題來了,識別模組自能是armeabli的cpu架構,其他的不可以,所以demo是直接固定了安裝需要的cpu ndk但現在是要把...