Ubuntu

共享對象安裝後去哪里以及如何找出它們的名稱

  • June 13, 2017

我剛剛使用以下命令安裝了 SFML 庫:apt-get install sfml-dev

安裝後我去我的/usr/lib文件夾找出實際共享對象的名稱是什麼(這樣我就知道要告訴我的編譯器使用什麼)。

但是那裡的名稱中沒有“SFML”。

但是,我的 /usr/include 目錄中有一個 SFML 文件夾。

那麼共享對象文件在哪裡,如果它們不在我的/usr/lib目錄中?

我怎樣才能找到它們,以便弄清楚告訴編譯器使用什麼?

g++ *.cpp -o exe -l?

gcc -print-search-dirs

顯示編譯器使用的所有搜尋路徑。

dpkg -L libsfml-dev

顯示包安裝的所有文件;要找到實際的庫,儘管您需要dpkg -L在實際包含該庫的任何包上執行(libsfml-dev具有許多庫依賴項)。

在任何情況下,現在庫通常最終都出現/usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)在 Debian 衍生產品上, /usr/lib/x86_64-linux-gnu常見的 64 位 PC 上。你實際上不需要擔心你的編譯器,它已經知道在哪裡可以找到庫——你只需要弄清楚-l要為它提供哪些參數。

引用自:https://unix.stackexchange.com/questions/370922