Linux + Dialogdienstprogramm kann nicht ausgeführt werden + habe Fehler

Linux + Dialogdienstprogramm kann nicht ausgeführt werden + habe Fehler

Das Problem ist folgendes:

Linux-Kernel: 3.0.13-0.27-default #1 SMP

Ich habe das Dienstprogramm „Dialog“ installiert ( /usr/bin/dialog), einfach die Bin-Datei kopiert nach/usr/bin

Als ich versucht habe, es auszuführen, libncursesw.so.5erschien eine Fehlermeldung bezüglich einer fehlenden Bibliothek.

Um das Problem zu lösen, versuche ich, die Datei zu kopieren, libncursesw.so.5 aber /usr/lib/ das hilft nicht

Jetzt habe ich einen weiteren Fehler erhalten:

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

Bitte beraten

Antwort1

Sie „installieren“ solche Anwendungen nicht unter Linux (abgesehen von einigen Sonderfällen). Verwenden Sie den Paketmanager Ihrer Distribution, um zu installieren, was Sie brauchen – er wird automatisch alle erforderlichen Pakete einbinden. Bei von SUSE Linux abgeleiteten Distributionen (da Sie das /suseTag verwenden) verwenden Sie

zypper in dialog

( inist die Abkürzung für install) oder

yast -i

Dies sollte Ihnen interaktive Dialoge bieten. Sie müssen diese natürlich mit Root-Rechten ausführen, um das Root-Dateisystem ändern zu können. Wenn Sie bereits dieVerteilungWenn Sie RPMs zur Hand haben, können Sierpm -Uvh package1.rpm package2.rpm ...

Die Hauptgründe, warum es falsch ist, Dinge einfach in Ihr Dateisystem zu kopieren:

  • Die Quelle der Binärdateien ist möglicherweise nicht zuverlässig, insbesondere aus Sicherheitsgründen. Sie führen nicht einfach irgendwelche Programme aus, die Ihnen jemand gibt – die Verwendung eines Distributionspakets gibt Ihnen zumindest eine gewisse Sicherheit über den Inhalt des Pakets (beispielsweise durch eine kryptografisch signierte Version).

  • die Binärdateien sind mit gemeinsam genutzten Bibliotheken verknüpft (in Ihrem Fall z. B. libncursesw) – wenn Sie keine ausreichend kompatible Bibliothek bereitstellen, treten zwangsläufig Probleme auf (die schwer zu debuggen sind).

Antwort2

Sie haben nicht gesagt, woher Sie die libncursesw.so.5Datei haben. Es scheint, dass es sich nicht um eine echte Bibliothek handelt.

Wenn Ihnen Bibliotheken fehlen, sollten Sie diese in jedem Fall von Ihrem Paketmanager aus installieren:

# yum install libncursesw5

verwandte Informationen