我正面臨將我的驅動程序移植到不同的Linux發行版中的困難,因爲它們的libudev版本不同。如何動態確定libudev版本
許多linux發行版都有不同的libudev版本,而libudev以不改變它的'soname'而破壞它們的接口而聞名。
因此,我們已經爲udev版本編寫了一個包裝,並且包裝庫使用'pkg-config'嚮導使用udev版本。但是現在,當我在不同的發行版中運行我的驅動程序(如Kali Linux)時,我知道'pkg-config'實用程序在某些Linux發行版(例如「Kali linux」)中不存在。
現在我的驅動程序無法運行,因爲它依賴於'Kali Linux'中找不到的'pkg-config'工具。如果不使用'pkg-config'工具,我無法確定libudev版本。即使我強迫我的客戶端安裝'pkg-config'工具,某些linux系統沒有* .pc文件,所以它也會失敗。
此問題的任何替代方案? 通過嘗試搜索該庫中聲明的函數來猜測libudev版本是否簡單?這是我目前唯一的方式。
在此先感謝。
我認爲你的前提是錯誤的。 pkg-config肯定存在於Kali linux中。也許你沒有安裝它。 – nos
是的,我沒有安裝,我的意思是我使用的實際版本amd64 –
然後,你應該使用軟件包管理器在卡利安裝pkg-config工具。 – nos