GNU/Linux >> Belajar Linux >  >> Linux

Apakah ada cara untuk memeriksa rpath saat ini di Linux?

Sebagai catatan, berikut adalah beberapa perintah yang akan menampilkan rpath tajuk.

objdump -x binary-or-library |grep RPATH

Mungkin cara yang lebih baik untuk melakukannya adalah sebagai berikut:

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

Perintah kedua juga mencantumkan dependensi langsung pada pustaka lain diikuti dengan 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;
}

Anda juga dapat menggunakan:

chrpath -l binary-or-library

Linux
  1. RDP Linux ke Windows:Cara Termudah 2019!

  2. Apakah ada yang setara dengan .Net FileSystemWatcher di dunia Linux?

  3. Bandingkan dua gambar dengan cara python/linux

  1. Apakah ada STDCALL di Linux?

  2. Apa sumber kernel Linux saat ini?

  3. Apakah ada whoami untuk menemukan grup tempat saya masuk saat ini?

  1. Linux – Bagaimana Cara Memeriksa Informasi Struktur Direktori File Unix/linux?

  2. Ny Cara Mengetahui Ukuran Cache L1, L2, L3 Dan Ram Di Linux?

  3. Linux – Mendapatkan File Untuk Tanggal Saat Ini Di Linux?