c语言中缺少link文件夹,c – Cmake找不到使用“link_directories”的库
我是Ubuntu,我正在學習關于cmake和make,而只是嘗試一個簡單的例子.我有兩個目錄:src和build.在src中,我有兩個文件:main.cpp和CMakeLists.txt,它有(僅)以下文本:
add_executable(test main.cpp)
link_directories(/usr/lib/x86_64-linux-gnu)
target_link_libraries(test protobuf)
在/usr/lib / x86_64-linux-gnu中,有一個名為libprotobuf.so的共享庫,我想鏈接.我的main.cpp使用這個庫中的函數,包括相關頭文件#include< google / protobuf / message.h> ;. 現在,在我的構建目錄中,我運行cmake ../src,然后make.但是,然后,我發現鏈接器錯誤告訴我,對protobuf庫中的某些功能有未定義的引用.如果我通過構建中的所有文件和子目錄進行搜索,則沒有提及與protobuf相關的任何內容. 但是,如果我刪除我的CMakeLists.txt文件中的link_directories行,而是在指定可執行文件時寫入庫的完整路徑,即target_link_libraries(test /usr/lib/x86_64-linux-gnu/libprotobuf.so),那么匯編和鏈接罰款. 為什么link_directories不允許cmake找到這個庫?
總結
以上是生活随笔為你收集整理的c语言中缺少link文件夹,c – Cmake找不到使用“link_directories”的库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C语言表示一元四次函数,论c语言程序设计
- 下一篇: c语言1 2 3 10000,在网上看到