Ubuntu
Arch,Ubuntu:那麼與 libudev.so.0 有什麼關係?
我對使用 Web 前端技術建構 Linux 桌面應用程序很感興趣。我嘗試過的兩個平台——Chromium Embedded Framework / CEFPython和Awesomium似乎都依賴於
libudev.so.0
,當他們找不到它時,它們會以最不愉快的方式失敗。
libudev.so.0
然而,在最近的 Ubuntu 版本中似乎沒有任何軟體包提供libudev.so.1
. 另一方面,Chromium 瀏覽器,基於 CEF 和 Awesomium 的最新版本,在沒有這種依賴的情況下執行愉快。有人知道這個圖書館背後的故事嗎?對於依賴嵌入 Chromium 的軟體,我如何正確確保跨不同 Linux 發行版的可靠執行?
基本上,
udev
被帶入整個systemd
革命,並成為更大、更複雜系統的一部分。各種變化增加了界面,需要從 跳轉.so.0
到.so.1
。開發人員並沒有通過提供
.so.0
and來同時支持舊介面和新介面.so.1
,而是選擇說“去他的,我們會讓他們都升級他們的依賴關係!” 他們.so.0
從二進制包中刪除了。如果有必要,可以建構
libudev
仍然提供的舊版本。.so.0
也有可能這種變化是最近才發生的,以至於大多數包維護者沒有發現故障明確聲明“這個包需要
libudev
在版本之前xyz
”,並且大多數開發人員還沒有將他們的二進製文件切換為需要最新版本的libudev
.第三種可能性是一些關鍵的開發人員實際上符號連結
.so.0
到.so.1
.基本上,當任何關鍵組件進行重大界面更改時,都會發生同樣的可能性。
資料來源:udev 上的維基百科
還有:程序庫HOWTO