Comment 3 for bug 234901

Revision history for this message
ITO Nobuaki (daydream-trippers+bugs) wrote :

Thanks for your comment. I got two points from your message.

1. Using linker flag "-Bsymbolic-functions" for building library is your policy.

Certainly it's not bad idea. It makes shared libraries more robust, so it seems to be good manner indeed.
(But ... I wonder why not "-Bsymbolic" instead of "-Bsymbolic-functions". Could you tell me the reason?)

2. In some conditions, Samba might not work well if it is built with "-Bsymbolic-functions".

In further update, the flag "-Bsymbolic-functions" would be removed from Samba package.

Still now I have to say my opinion:
- The linker flag "-Bsymbolic(-functions)" is for build-time usage principally.
- Do not force developers to use the flag who link their program against those libraries.

As you have already written, "dpkg" itself doesn't need to be modified. On the other hand, some of "*-config" scripts apply build-time LDFLAGS for "--libs" configuration. That make unfortunate consequences.

Upon my little investigation, following programs incorrectly state "-Bsymbolic-functions" when they are called with "--libs" or "--ldflags" argument.

- krb5-config in krb5
- cups-config in cupsys
- net-snmp-config in net-snmp
- mysql_config in mysql-dfsg (see https://bugs.launchpad.net/ubuntu/+source/mysql-dfsg-5.0/+bug/225741)

More affected packages may exist. There are many many packages in Ubuntu, so I could not cover them all. I think these packages would be modified.

Not all of packages (having *-config script) are affected. Some programs (ex. pth-config in pth) don't have "-Bsymbolic-functions" (but was built with "-Bsymbolic-functions"). And some packages which support pkg-config (ex. libssl) have "-Bsymbolic-functions" in "Libs.private", not in "Libs". Good.