pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
re: travails of the pixman upgrade [Was: Is pango still broken? (vim-gtk2 won't build)]
- Subject: re: travails of the pixman upgrade [Was: Is pango still broken? (vim-gtk2 won't build)]
- From: matthew green <mrg%eterna.com.au@localhost>
- Date: Wed, 22 Sep 2010 13:36:26 +1000
> > | What mechanism is supposed to select the latter over the former?
> > [That referred to the .buildlink/lib/*.so over X11R7/lib/*.so.]
> >
> > Good question. Maybe someone who understands the toolchain can explain
> > how a library gets selected when given to a cc (gcc) command line as -lfoo
> > and libfoo-*.so exists in two different directories, both of which are
> > specified in -L args (and -Wl,R args of course.) ??
> >
> > (That question is why I have added tech-toolchain to this message,
> > anyone on the toolchain list who doesn't see pkgsrc-users will find
> > the rest of this thread there.)
>
> -R or -Wl,-R won't change any link-time thing. those paths are placed
> into the RPATH embedded into the binary. sunos4 ld -R also put the
> path into the library search path, but this was changed in sunos5 and
> in the binutils ELF.
>
> only -L changes the link-time search path (sans some other exotic
> options that are more about using a cross compiler.)
ah, it has been pointed out that -rpath and -rpath-link affect the
finding of shlibs referenced by other shlibs. so i went and had
a look in the sources, and it pretty much is a target specific thing,
for elf targets, depending on whether the USE_LIBPATH variable is set
to yes when building the linker emulations.
going on this code (from elf32.em), i think it does -rpath-link,
-rpath (including DT_NEEDED entries found), and the -L last.
> i'm not sure exactly understand the question though. are there two
> shlibs being linked? or just two with the same name in different
> subdirs of the link path?
.mrg.
Home |
Main Index |
Thread Index |
Old Index