linux + 無法執行對話框實用程式 + 出現錯誤

linux + 無法執行對話框實用程式 + 出現錯誤

問題如下:

Linux 核心:3.0.13-0.27-default #1 SMP

我已經安裝了“dialog”實用程式(/usr/bin/dialog),只需將 bin 檔案複製到/usr/bin

當我嘗試運行它時,libncursesw.so.5出現了有關缺少庫的錯誤訊息。

為了解決這個問題,我嘗試將文件複製libncursesw.so.5/usr/lib/ 但沒有幫助

現在,我遇到了另一個錯誤:

error while loading shared libraries: /usr/lib/libncursesw.so.5: file too short

請指教

答案1

您不會在 Linux 上「安裝」這樣的應用程式(除了一些極端情況)。使用您的分發包管理器安裝您需要的東西 - 它會自動拉入所有必需的套件。如果是 SUSE Linux 派生發行版(因為您正在使用該/suse標籤),請使用

zypper in dialog

(in的縮寫install) 或

yast -i

這應該會給你互動對話。顯然,您必須以 root 權限執行這些程式才能修改根檔案系統。如果您已經擁有分配手邊的 RPM,您可以使用rpm -Uvh package1.rpm package2.rpm ...

僅將內容複製到檔案系統中是錯誤的主要原因:

  • 二進位檔案的來源可能不可靠,尤其是從安全角度來看。你只是不運行別人給你的任何程式 - 使用分發包至少可以讓你對包的內容有一些保證(例如透過加密簽名);

  • 二進位檔案與共享庫連結(例如,在您的情況下為 libncursesw) - 如果您不提供足夠相容的庫,那麼您必然會遇到問題(很難調試)。

答案2

你沒有說你libncursesw.so.5從哪裡得到這個文件。看來這不是一個真正的圖書館。

無論如何,當您缺少庫時,您應該從套件管理器安裝它們:

# yum install libncursesw5

相關內容