[an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]
[an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]![]() |
![]() |
![]() |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||||
![]() |
![]() |
![]() |
In <sslug@sslug> Egon Andersen <sslug@sslug> writes: >Henrik Storner wrote: >[snip] >> >>>Men burde jeg ikke kunne kompilere mine applikationer/programmer, så de >>>blot anvender libxxx.so, der er et symlink til hvad der nu måtte være på >>>maskinen/distroen? >> >> >> Nej, for din applikation er kompileret med f.eks. nogle definitioner >> af strukturer og variable, som kan være ændret. Hvis din applikation >> f.eks. kalder funktionen stat(2) (som henter oplysninger om en fil), >> så står der i din applikation >> >Takker for svaret. >Men kan du så fortælle mig hvorfor symlinket libxxx.so så i det hele >taget findes? >Det giver jo ikke meget mening, hvis den aldrig reelt kan benyttes? Det har du sådan set ret i, men jeg mener at det bruges af linkeren når du oversætter programmet, så den ikke behøver at vide hvilket nummer af biblioteket der nu er installeret. Jeg mener også at systemet med at libfoo.so er et symlink er på vej ud. På min maskine findes f.eks. /usr/lib/libc.so - og det er ikke et symlink, men en tekstfil der henviser til libc.so.6: /* GNU ld script Use the shared library, but some functions are only in the static library, so try that secondarily. */ OUTPUT_FORMAT(elf32-i386) GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a ) Og denne fil stammer fra libc6-dev pakken, der kun installeres hvis man konfigurerer sin maskine med udviklings-værktøjerne. Mvh, Henrik
![]() |
![]() |
![]() |
||||||||||||
|
||||||||||||||
![]() | ||||||||||||||
|
||||||||||||||
![]() |
![]() |
![]() |