GNU/Linux >> Linux Esercitazione >  >> Linux

ldd non trova il percorso, come aggiungere

se le tue librerie non si trovano sul percorso standard, devi aggiungerle al percorso o aggiungere un percorso non standard a LD_LIBRARY_PATH

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<Your_non-Standard_path>

Dopo aver eseguito una delle operazioni precedenti, è necessario aggiornare l'associazione di runtime del linker dinamico eseguendo il comando seguente:

sudo ldconfig

AGGIORNAMENTO:

Puoi rendere permanenti le modifiche scrivendo export sopra line in uno dei tuoi file di avvio (ad es. ~/.bashrc) OPPURE se la libreria sottostante non è in conflitto con nessun'altra libreria, inseriscila in uno dei percorsi di libreria standard (ad es. /lib,/usr/lib)


LD_LIBRARY_PATH è adatto per test brevi, ma poiché esiste una sola variabile , è scomodo da usare quando potresti avere più applicazioni con librerie personalizzate.

Il modo usuale per Debian/Ubuntu è di aggiungerlo alla configurazione del caricatore, ad esempio un file sotto

/etc/ld.so.conf.d

contenente la directory in cui desideri che il caricatore esegua la ricerca, ad es.

/usr/local/libcsfml

Ulteriori letture:

  • ldconfig - configura le associazioni di runtime del linker dinamico
  • ld.so, ld-linux.so* - linker/loader dinamico
  • Perché LD_LIBRARY_PATH è dannoso

Sembra che il binario in questione sia stato compilato da te.

Quindi sei responsabile del problema che alcune librerie non possono essere trovate.

Nel caso in cui queste librerie siano disponibili sul tuo sistema, sembrano trovarsi in percorsi di directory non standard.

Usa -R directory per la chiamata finale del compilatore per comunicare al linker directory dove si trovano le biblioteche. Più di un singolo -R directory opzione è possibile.

Nota che quando usi gcc , potrebbe essere necessario utilizzare -Wl,-R invece di -R .


Linux
  1. Come aggiungere una directory a PATH in Linux [con esempi]

  2. Come aggiungere correttamente un percorso al percorso?

  3. Come aggiungere in modo pulito a $ percorso?

  4. Linux – Ldd non trova il percorso, come aggiungere?

  5. Come eseguire il comando "trova" solo sulla directory corrente e non sulle sottodirectory

Come aggiungere una directory a PATH in Linux

Come contare i file nella directory in Linux

Come aggiungere una directory a PATH in Linux [Suggerimento rapido]

Trova:Prune non ignora il percorso specificato?

Vsftpd non elenca il contenuto di una directory?

Linux:aggiungi una directory a PATH