套件管理和建構舊軟體

套件管理和建構舊軟體

.so在工作中,我們有一個供應商提供的函式庫,它以 C++ 頭檔和檔案的形式交付給我們。我們的生產環境長期以來一直是 CentOS 6,但我們可能很快就會升級到 CentOS 7。

我還應該提到供應商庫的依賴項是動態連結的。

安裝到 CentOS 6 的新實例上效果很好yum,但在 CentOS 7 上安裝效果很差。yum抱怨很多包找不到,以 python2.6(即libpython2.6.so)為例。我可以找到所有這些缺少的依賴項的 RPM,但在許多情況下無論如何都無法安裝它們,正如 yum 所說,在意味著降級的情況下「無能為力」。

我想我的問題是雙重的。是否可以像 Python 的情況一樣,透過 安裝另一個版本的 Python yum,而不使其成為系統版本,以便連結器可以為這個舊的供應商庫找到它?

手動創建所有.so文件似乎是一場失敗的戰鬥,因為有一個很多缺少依賴項,例如libpng12,當 CentOS 7 有libpng15.

在這種情況下,經驗豐富的系統管理員會做什麼?或者這只是讓這個舊程式在 CentOS 7 上運行是在風車上傾斜的情況?

相關內容