One of the changes that we made in libtool-1.5.26 and cvs HEAD was to change the archive_expsym_cmds on darwin. With leopard the older method of creating the output and then using nmedit to reduce the exported symbols seems to work, but the dynamic linker then sometimes fails to load the resulting object. Both this apache bug and this gnome bug are fixed by using ld’s -exported_symbols_list flag instead. I am glad the change made it into 1.5.26
Of course the reason that libtool did not use -exported_symbols_list in the first place is that Mac OS X 10.0 and 10.1 do not support it, and nmedit did the job just fine up to 10.5. Apple seems to have allowed nmedit to bitrot, it no longer does the same job that it did in 10.4. Filing a bug that you know in advance is just going to be closed with “use ld’s -exported_symbols_list flag” seems kind of pointless, but I guess I should do it anyway.