[LUGOS-PROG] linkanje knjižnic

Metod Kozelj metod.kozelj at rzs-hm.si
Mon Dec 31 11:28:19 CET 2001


Howdy!

On Fri, 28 Dec 2001, Miha Tomšič wrote:

> V strings je samo en "čuden" direktorij, ki ga recimo nimam. 
> ...
> /usr/X11R6/lib/X11/Metro/.version

Najbrz to ne bo imelo veze.

> ampak samo X11 in Xext ne najde. To se ne dogaja smao pri SDL, ampak tudi
> pri drugih knjižnicah. Recimo libtk*.so. Pa libgtk. Zanimivo je, da je
> večina GNU programja tako zvitega, da pri pisanju Makefiletov uporabijo
> kar `gtk-config --libs`, ki zgleda takole:
> -L/usr/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -ldl
> -lXi -lXext -lX11 -lm
> 
> To je potrebno predvsem za statično linkanje. Tudi brez vseh teh -l* 
> linker pametno vključi vse knjižnice razen tistih, ki domujejo v
> /uer/X11R6/lib.

Hja, v man ld pri meni pise tole:

       -Lsearchdir
              This  command  adds  path  searchdir to the list of
              paths that ld will search  for  archive  libraries.
              You may use this option any number of times.

              The  default  set  of paths searched (without being
              specified with -L) depends on what  emulation  mode
              ld  is  using, and in some cases also on how it was
              configured.    The paths can also be specified in a
              link script with the SEARCH_DIR command.

Cisto mozno je, da tvoj linker ne isce knjiznic v /usr/X11R6/lib ... Glede
na zadnji stavek bi morda pomagalo, ce bi v /etc/profile dodal nekaj v
smislu

SEARCH_DIR=/lib:/usr/lib:/usr/local/lib:/usr/X11R6/lib ; export SEARCH_DIR

(sintaksa je zgolj ugibanje, ampak nekako standard je : kot locilo med
potmi).

Peace!
  Mkx

---- perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'




More information about the lugos-prog mailing list