GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Gibt es eine Möglichkeit, den aktuellen rpath unter Linux zu überprüfen?

Fürs Protokoll, hier sind ein paar Befehle, die den rpath anzeigen Kopfzeile.

objdump -x binary-or-library |grep RPATH

Vielleicht ist ein noch besserer Weg, dies zu tun, der folgende:

readelf -d binary-or-library |head -20

Der zweite Befehl listet auch die direkten Abhängigkeiten zu anderen Bibliotheken auf, gefolgt von rpath .


#include <stdio.h>
#include <elf.h>
#include <link.h>

int main()
{
  const ElfW(Dyn) *dyn = _DYNAMIC;
  const ElfW(Dyn) *rpath = NULL;
  const char *strtab = NULL;
  for (; dyn->d_tag != DT_NULL; ++dyn) {
    if (dyn->d_tag == DT_RPATH) {
      rpath = dyn;
    } else if (dyn->d_tag == DT_STRTAB) {
      strtab = (const char *)dyn->d_un.d_val;
    }
  }

  if (strtab != NULL && rpath != NULL) {
    printf("RPATH: %s\n", strtab + rpath->d_un.d_val);
  }
  return 0;
}

Sie können auch verwenden:

chrpath -l binary-or-library

Linux
  1. So aktualisieren Sie auf Linux Mint 20.3:Der richtige Weg

  2. Was ist der aktuelle Runlevel des Linux-Systems?

  3. Der beste Weg, Hotkeys-Unterstützung in Linux zu implementieren?

  4. Gibt es eine Möglichkeit, die Größe von L1-, L2-, L3-Cache und RAM in Linux zu ermitteln?

  5. Linux – Dateien für das aktuelle Datum in Linux abrufen?

Die 8 beliebtesten verfügbaren Linux-Distributionen

Linux-Runlevels richtig verstehen

EndeavourOS – Lerne Arche richtig

Gibt es eine Möglichkeit, die in TTY-Konsolen unter Linux verwendeten Farben zu ändern?

Gibt es ein Whoami, um die aktuelle Gruppe zu finden, als die ich angemeldet bin?

Gibt es eine Möglichkeit, die BIOS-Version von Linux abzurufen?