> From: Michael Meskes [mailto:meskes@postgresql.org]
> e.g. a random hit from google:=C2=A0https://www.bottomupcs.com/libra
> ries_and_the_linker.xhtml
>
> There even is a wikipedia page about
> it:=C2=A0https://en.wikipedia.org/wiki/
> Soname
Thank you for good pointers. The former is particularly nice.
> > BTW, although this may be a separate topic, it may be better that we
> > add the major version in the library names like libpq5.dll and
> > libecpg6.dll, so that the application can fail to run with the
> > incompatible versions of libpq and libecpg.=C2=A0=C2=A0FYI:
>
> Does this mean you cannot have to versions of libpq installed on the same
> Windows system at the same time?
No, you can have different versions in separate folders, as in:
C:\Program Files\PostgreSQL\9.2
C:\Program Files\PostgreSQL\9.5
and change the PATH environment variable to point to a newer version when you want to use the existing application
withoutrebuilding it.
However, the problem I pointed out is that when the new library is incompatible with the older one, say the major
versionof libpq.dll changes from 5 to 6, the application user and/or developer cannot notice the incompatibility
immediatelyand easily. On Unix/Linux, the application fails to start because the older library is not found. On the
otherhand, the application will start on Windows and probably cause difficult trouble due to the incompatibility.
Regards
Takayuki Tsunakawa