ld -shared -Bsymbolic and C++ shared library
H. J. Lu
hjl@lucon.org
Sun Jul 16 17:58:00 GMT 2006
ld -shared -Bsymbolic will reduce number of dynamic relocations in
a shared library. Unfortunately, it won't work correctly with C++
exception and maybe other language features.
However, I think it is possible to make -shared -Bsymbolic to work
for C++ by providing a way to specify a list of symbols which must
be dynamic. We then can do
# g++ -Wl,-Bsymbolic -shared -xxx "list of dynamic symbols" -o libfoo.so ...
and libfoo.so written in C++ will work correctly with much fewer dynamic
relocations.
H.J.
More information about the Gcc
mailing list