Wie kann ich feststellen, ob eine Binärdatei im Terminal ausgeführt werden kann oder das X Window-System unter Linux ohne Internetzugang erfordert?

Wie kann ich feststellen, ob eine Binärdatei im Terminal ausgeführt werden kann oder das X Window-System unter Linux ohne Internetzugang erfordert?

Wenn ich wissen möchte, ob eine Binärdatei über die Befehlszeile, das X Window-System oder beide ausgeführt werden kann, wie kann ich das ohne Internetzugang feststellen?

Antwort1

Verwenden Sie ldd, um zu prüfen, ob es mit einer X11-Bibliothek wie libX11oder verknüpft ist libxcb. Wenn eine davon aufgeführt ist, wird das ProgrammMaiVerwenden Sie X11.

Das heißt jedoch nicht, dasserfordertX11; dies kann nicht programmgesteuert ermittelt werden, ohne den Quellcode zu untersuchen oder das Programm auszuführen. Beispielsweise kann ein Programm ein Grafikfenster anzeigen, wenn X11 verfügbar ist, und andernfalls eine Textschnittstelle.

Wenn die ausführbare Datei statisch verknüpft ist, führen Sie stringssie aus und suchen Sie nach den Wörtern " DISPLAY", " .Xauthority", " /tmp/.X" oder ähnlichem. Dies ist ein noch weniger zuverlässiger Indikator, da diese Zeichenfolgen gelegentlich sogar in rein textbasierten Programmen auftreten können.

Antwort2

Lesen Sie die Manpage.

Obwohl Sie möglicherweise tatsächlichlesendas Dumme ist, anstatt einen Blick auf die Nutzung zu werfen und schnell durch die Optionen zu blättern.

verwandte Informationen