mboost-dp1
libexec path
- Forside
- ⟨
- Forum
- ⟨
- Support
Jeg sidder lige og leger lidt mere med mine PATHs, og jeg har bl.a. PATH og LIBRARY_PATH, men hvor hører libexec til?
Jeg spørger, fordi navnet jo antyder at den enten skal tilføjes til LIBRARY_PATH eller muligvis have sin egen. Indholdet antyder der i mod, at den muligvis skal tilføjes til PATH.
Jeg spørger, fordi navnet jo antyder at den enten skal tilføjes til LIBRARY_PATH eller muligvis have sin egen. Indholdet antyder der i mod, at den muligvis skal tilføjes til PATH.
Jeg kender til PATH og LD_LIBRARY_PATH. PATH er til de programfiler, som man vil kunne afvikle fra sin shell (eller andre steder, hvor man indtaster kommandoer). LD_LIBRARY_PATH er til libraries, som ikke ligger i en af standardlokationer, hvor linkeren altid kigger. I de fleste tilfælde har man ikke brug for LD_LIBRARY_PATH fordi man har libraries liggende i standardlokationerne.BurningShadow (1) skrev:Jeg sidder lige og leger lidt mere med mine PATHs, og jeg har bl.a. PATH og LIBRARY_PATH, men hvor hører libexec til?
Et libexec directory er beregnet til programfiler, som ikke er beregnet til at blive kaldt direkte fra kommandolinien. Programfilerne i libexec er beregnet til at blive kaldt internt fra andre programmer og libraries. Dermed hører libexec ikke til i hverken PATH eller LD_LIBRARY_PATH. Jeg ved ikke, hvordan man normalt finder sit libexec directory. Jeg har aldrig haft brug for at sætte det op. Jeg formoder at placeringen af libexec directoriet ligger fast når det kaldene program eller library compileres.
Super, tak skal du have :-)
Det forklarer også hvorfor jeg ikke kunne finde et ordentligt svar andre steder på nettet.
Det forklarer også hvorfor jeg ikke kunne finde et ordentligt svar andre steder på nettet.
Er der mon en nem måde, at finde ud af hvilke environment variables, der er defineret. Jeg bruger bash.
Nu hvor vi er igang med PATH, er det så muligt at update PATH i en åbn shell, og få ændringerne til at slå igennem i en anden (alle)?
Det er mest fordi jeg kan gøre det med messages, men der er jo ingen grund til at (gen)opfinde den dybe tallerken, hvis nu der allerede findes en måde at gøre det på, i bash.
Når det kommer til shell's så er det nok bedst at gøre tingende så tæt som muligt, på den måde andre gør det.
Bør nok lige indskyde, at det ikke er super vigtigt, da det jo trods alt er relativt sjældent, at man installerer ekstra *NIX software, og dem der har brug for det, primært er udviklere, og derfor må antages at kunne køre "updatepath" kommandoen, uden at blive skræmt væk af det...
Det er mest fordi jeg kan gøre det med messages, men der er jo ingen grund til at (gen)opfinde den dybe tallerken, hvis nu der allerede findes en måde at gøre det på, i bash.
Når det kommer til shell's så er det nok bedst at gøre tingende så tæt som muligt, på den måde andre gør det.
Bør nok lige indskyde, at det ikke er super vigtigt, da det jo trods alt er relativt sjældent, at man installerer ekstra *NIX software, og dem der har brug for det, primært er udviklere, og derfor må antages at kunne køre "updatepath" kommandoen, uden at blive skræmt væk af det...
Mit bedste forslag ville være at sætte følgende kommando i en af bash rc filerne:BurningShadow (7) skrev:Nu hvor vi er igang med PATH, er det så muligt at update PATH i en åbn shell, og få ændringerne til at slå igennem i en anden (alle)?
PROMPT_COMMAND='. /etc/update-path'
Og så i /etc/update-path have et indhold i stil med:
export PATH="$(/bin/update-path)"
Programfilen /bin/update-path kan så bruge getenv("PATH") til at finde ud af hvad PATH er for den shell den blev kaldt fra. Og den skriver på stdout hvad den skal ændres til.
Ulempen er at efter en ændring er blevet lavet træder den først i kraft i andre shells efter den næste kommando er kørt.
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.