簡體   English   中英

如何在簡單的cpp文件中找到package和沒有cmake的鏈接庫?

[英]How to find package and link library without cmake in simple cpp file?

文件名:main.cpp

#include<iostream>
#include"boolector.h"

using namespace std;
int main()
{
Btor* btor=boolector_new();
cout<<"hello world";
boolector_delete(btor);
}

如果我不想制作 CMake 項目,只是一個 C++ 文件並且仍然想像 CMake 那樣鏈接庫怎么辦?

我想要相當於在 g++ 中跟隨(在 CmakeLists.txt 中)。

find_package(Boolector)
target_link_library(project_name Boolector::boolector)

可以在Text找到文檔。

/usr/local/bin/boolector 
/usr/local/include/boolector
/usr/local/include/boolector/boolector.h
/usr/local/include/boolector/btortypes.h
/usr/local/lib/libboolector.a
/usr/local/lib/libboolector.so

定位布爾函數的結果

/usr/local/lib/cmake/Boolector
/usr/local/lib/cmake/Boolector/BoolectorConfig.cmake
/usr/local/lib/cmake/Boolector/BoolectorConfigVersion.cmake
/usr/local/lib/cmake/Boolector/BoolectorTargets-release.cmake
/usr/local/lib/cmake/Boolector/BoolectorTargets.cmake

locate Boolector 的結果

我正在使用 CentOS。

您可以使用g++-l-L-I選項,例如:

g++ -L /usr/local/lib/ -lboolector -I /usr/local/include/boolector main.cpp -o main
  • -l選項用於設置要鏈接的庫的名稱
  • -L選項用於設置必須搜索要鏈接的庫的路徑
  • -I選項用於設置庫的 header 個文件所在的路徑

要運行可執行文件,您需要確保這些庫位於LD_LIBRARY_PATH環境變量中。

export LD_LIBRARY_PATH=$LD_LIBARY_PATH:/usr/local/lib
./main

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM