Hoe de omgevingsvariabele LD_LIBRARY_PATH in linux in te stellen

Ik heb eerst het commando uitgevoerd: export LD_LIBRARY_PATH=/usr/local/lib

Vervolgens heb ik het bestand .bash_profile geopend: vi ~/.bash_profile.
In dit bestand plaats ik:

LD_LIBRARY_PATH=/usr/local/lib
export LD_LIBRARY_PATH

Als de terminal wordt gesloten en opnieuw wordt opgestart, geeft het typen van echo $LD_LIBRARY_PATH geen resultaat.

Hoe kan ik het pad permanent instellen?


Antwoord 1, autoriteit 100%

Je zou meer details over je distributie moeten toevoegen, bijvoorbeeld onder Ubuntu is de juiste manier om dit te doen een aangepast .conf-bestand toe te voegen aan /etc/ld.so.conf.d, bijvoorbeeld

sudo gedit /etc/ld.so.conf.d/randomLibs.conf

in het bestand moet je het volledige pad schrijven naar de map die bijvoorbeeld alle bibliotheken bevat die je aan het systeem wilt toevoegen

/home/linux/myLocalLibs

Vergeet niet om alleen het pad naar de map toe te voegen, niet het volledige pad voor het bestand, alle bibliotheken binnen dat pad worden automatisch geïndexeerd.

Bewaar sudo ldconfig en voer het uit om het systeem bij te werken met deze bibliotheken.


Antwoord 2, autoriteit 68%

Behoud het vorige pad, overschrijf het niet:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your/custom/path/

Je kunt het toevoegen aan je ~/.bashrc:

echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/your/custom/path/' >> ~/.bashrc

Antwoord 3, autoriteit 17%

Toevoegen

LD_LIBRARY_PATH=”/path/you/want1:/path/you/want/2″

naar /etc/environment

Zie de Ubuntu-documentatie.

CORRECTIE: ik moet mijn eigen advies opvolgen en de documentatie daadwerkelijk lezen. Er staat dat dit niet van toepassing is op LD_LIBRARY_PATH: Sinds Ubuntu 9.04 Jaunty Jackalope, kan LD_LIBRARY_PATH niet worden ingesteld in $HOME/.profile, /etc/profile, noch in /etc/environment-bestanden. Je moet /etc/ld.so.conf.d/.conf configuratiebestanden gebruiken.* Dus het antwoord van user1824407 is perfect.


Antwoord 4, autoriteit 12%

Als alternatief kunt u het programma uitvoeren met de gespecificeerde bibliotheekmap:

/lib/ld-linux.so.2 --library-path PATH EXECUTABLE

Lees hier meer.


Antwoord 5, autoriteit 10%

Het bestand .bash_profile wordt alleen uitgevoerd door login-shells. Mogelijk moet u het in ~/.bashrc plaatsen, of gewoon uitloggen en opnieuw inloggen.


Antwoord 6, autoriteit 7%

Om de een of andere reden heeft niemand het feit genoemd dat de bashrc na het bewerken opnieuw moet worden gesourced. Je kunt ofwel uitloggen en weer inloggen (zoals hierboven vermeld), maar je kunt ook de commando’s gebruiken: source ~/.bashrc of . ~/.bashrc.


Antwoord 7, autoriteit 6%

Plaats export LD_LIBRARY_PATH=/usr/local/lib in ~/.bashrc [bij voorkeur tegen het einde van het script om tussentijdse overschrijvingen te voorkomen, standaard ~/.bashrc wordt geleverd met veel if-else-instructies]

Post dat wanneer je een nieuwe terminal/konsole opent, LD_LIBRARY_PATH wordt weergegeven


Antwoord 8, autoriteit 4%

  1. Ga naar de thuismap en bewerk .profile
  2. Plaats de volgende regel aan het einde

    export LD_LIBRARY_PATH=<your path>

  3. Opslaan en afsluiten.

  4. Voer deze opdracht uit

    sudo ldconfig


Antwoord 9

Ik doe het volgende in Mint 15 tot en met 17, werkt ook op ubuntu-server 12.04 en hoger:

sudo vi /etc/bash.bashrc 

scroll naar beneden en voeg toe:

export LD_LIBRARY_PATH=.

Alle gebruikers hebben de omgevingsvariabele toegevoegd.


Antwoord 10

Je zou kunnen proberen een aangepast script toe te voegen, bijvoorbeeld myenv_vars.sh in /etc/profile.d.

cd /etc/profile.d
sudo touch myenv_vars.sh
sudo gedit myenv_vars.sh

Voeg dit toe aan het lege bestand en sla het op.

export LD_LIBRARY_PATH=/usr/local/lib

Uitloggen en inloggen, LD_LIBRARY_PATH is permanent ingesteld.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

five × 5 =

Other episodes