我剛剛按照說明在我的 Ubuntu 20.04 中安裝了hidapi,即通過執行
sudo apt install libhidapi-dev
我在mwe.cpp只包含這一行的檔案中撰寫了我的程式:
#include <hidapi.h>
現在我想用
g -o mwe.o mwe.cpp
但我明白了
mwe.cpp:1:10: fatal error: hidapi.h: No such file or directory
我應該如何使用這個模塊?很抱歉有這樣一個基本問題,但無法找到。
uj5u.com熱心網友回復:
在基于 Ubuntu 的系統上,系統包libhidapi-dev將包含檔案安裝到/usr/include/hidapi,因此要么-I/usr/include/hidapi在命令列中包含此 ( ) 要么#include <hidapi/hidapi.h>
uj5u.com熱心網友回復:
如果該標頭不在標頭的標準搜索路徑內,那么您可以使用-I標志手動包含它,例如
g -I/usr/include/hidapi -o mwe.o mwe.cpp
要在 ubuntu 上定位檔案,您可以運行:
sudo updatedb
locate hidapi.h
> /usr/include/hidapi/hidapi.h
您可以使用以下命令查看標準包含搜索路徑:
gcc -print-search-dirs
或者,因為/usr/include在標準搜索路徑上,您可以將包含撰寫為<hidapi/hidapi.h>.
uj5u.com熱心網友回復:
如何在Ubuntu中使用apt安裝#include <whatever.h>
如果包將標頭安裝在編譯器的默認搜索路徑中包含的目錄中(這是典型的),那么您可以使用來自安裝標頭的搜索路徑的根目錄的相對路徑來包含標頭。例如,如果檔案在 path 中/usr/include/x/y.h,那么您可以包含<x/y.h>.
如果包沒有在默認搜索路徑中安裝頭檔案,那么您必須在呼叫編譯器時指定搜索路徑,然后包含相對于指定包含目錄的頭檔案。例如,如果檔案在 path 中/opt/custom/x/y.h,那么您可以包含<x/y.h>并指定/opt/custom為編譯器的搜索路徑。
如果您使用 GCC 或兼容編譯器,并且包支持它,那么您可以使用呼叫的程式pkg-config來獲取使用庫所需的編譯器選項。除了頭檔案搜索路徑,這還負責與庫以及任何強制性編譯器選項的鏈接。例子:
pkg-config --libs --cflags libhidapi
不知道,如何找到hidapi.h的位置?
有多種方法可以找出檔案的位置。一個通用的工具是程式find。例子:
find / -name=hidapi.h
學習 apt 包安裝的檔案路徑的更具體的工具是apt-file. 或者,您可以在https://packages.ubuntu.com/網站中查找檔案串列。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/378277.html
