Age | Commit message (Collapse) | Author |
|
|
|
Otherwise, if a shared library uses an aliased symbol in another
library, the alias will only be partially resolved (everything setup...
except for the real symbol marked as referenced, so the relocation ends
up being zero and causes core-dumps on runtimes).
Caused quite a few crashes: Xfree's 4 GL (linked with libc_r) or
kerberosV exhibited the problem...
|
|
From NetBSD.
fgsch@ agrees.
|
|
use the hint cache nor anything, but at least it shows what dependencies
exist.
|
|
|
|
|
|
|
|
each time.
|
|
This is needed for a -fPIC libgcc.
|
|
|
|
|
|
Add support for -U option:
Unconfigure directories specified on the command line or remove
inaccessible directories from search path if no directories spec-
ified. This option cannot be used with -m.
- this option helps to correctly pkg_delete packages like postgresql,
mysql (with shared libs in package's own directory).
ok espie@
|
|
|
|
- ldconfig -R: do not add /usr/lib to search path,
use previously configured dirs instead.
- avoid duplicates in search path
ok espie@
|
|
ok espie@
|
|
Since those are properly protected against multiple execution, even
if collect2/ld manages to link them at some point, this won't add
problems.
|
|
|
|
Avoid duplicates in search path.
ok espie@
|
|
|
|
|
|
collect2: ld terminated with signal 11 [Segmentation fault]
|
|
This fixes an important bug: libc now uses weak symbols a lot.
Without this patch, dynamic linking with libraries that reference libc
would mean those symbols would not be resolved, as weak symbols are good
enough for linking, but 2nd hand libraries symbols are not.
Not 100% sure this won't trigger problems later (nothing yet), but this
fixes the immediate problem.
Approved by niklas@ and millert@
|
|
o Don't try and look up an empty element in the hints file
o Convert "" to "." when adding to the list of search dirs
Perviously, an LD_LIBRARY_PATH that ended in ':' was ignored.
|
|
* Rely on BYTE_ORDER instead of specific values of XHOST to determine
cross-endianness,
* Link necessary cross-includes to the right location,
* Add some necessary stubs for cross-endian sparc and cross-endian m68k.
This does let i386->m68k work, and probably brings i386->sparc most of the
way there...
Approved by mickey@, niklas@ is to busy to answer email as usual...
|
|
Tested by espie@
|
|
handle reported_undefineds correctly.
Probably unseen before now because this warning only occurred for symbols
that also triggered other warnings ? or maybe no-one cares.
|
|
and major !=-1 anywhere).
Simplify test logic: it's enough to check path != NULL to know whether
we found something. cmpdewey() code is enough to ensure we get the best
one (libfoo.a doesn't change n, any appropriate libfoo.so will take
precedence).
|
|
we found something correct or not.
|
|
|
|
be looked for in the libary search path. If a name has a '/' in it,
treat it as a pathname, even if it starts with "lib"; gsar@ActiveState.com
|
|
ld (and ld.so) should take the shared library of the highest version
in the first directory that it founds. this is the way ld/ld.so has
traditionally worked since SunOS 4 and this is the way it should work.
before changing this back - please make sure you understand the
semantics of this and that you are not just hiding some other bug but
toggling this change. also verify the example in the PR.
see PR/972
|
|
|
|
Fix prototypes, propagate const where applicable.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
everything to fit into pic mode.
More extensive changes (like tagging relocs with pic/PIC, sorting, and
putting pic nearest the beginning of the GOT) would be needed for full
handling pic relocs with a sizeable number of PIC relocs.
|
|
them, but they should be `reasonable' objects to pass to it.
Otherwise, collect2 will get confused if the gcc driver is used to build
dynamic libraries.
|
|
|
|
and is only needed for rtld anyway.
and missing md_swap routines as well.
|
|
gcc-happy.
|
|
for shared libs when the first was found... thus it would miss a
newer version found later in the search path
|
|
|
|
|
|
|
|
|