I recently ran into an issue where a build was failing at the very end because the shared libraries were not being created as expected, but the actual linking step appeared to succeed. Switching to GNU libtool made the problem mysteriously disappear.
The Makefile was passing the -shrext flag to GNU libtool to create shared libraries with a custom extension. The libtool from base was silently ignoring this flag as opposed to erroring out as I would have expected. I've seen similar issues e.g. in smtpctl where extraneous flags from the GNU, etc. equivalents are just silently ignored. There is a tradeoff in ignoring unsupported flags vs throwing an error, but IMO this is not ideal because it creates undefined behaviour. The build should have failed at that step and not generate .so libraries and quietly carry on. At the very least it would have saved some time looking in the wrong place. The man page for libtool is quite terse and states: > libtool is supposed to be a drop-in replacement for the eponymous GNU > project. However, no flags are detailed nor a listing of all the unsupported ones. Regards Lloyd
