The person who invented the concept of shared libraries should be given a raise... and a bonus. The person who decided that shared library management and naming conventions should be left to the implementation should be flogged.
This opinion is the result of too much negative experience on my part with building shared libraries for multiple platforms without the aid of Libtool. The very existence of Libtool stands as a witness to the truth of this sentiment.
Libtool exists for one purpose only--to provide a standardized, abstract interface for developers desiring to create portable shared libraries. It abstracts both the shared library build process, and the programming interfaces used to dynamically load and access shared libraries at run time.