You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
the shared library is installed as libtidy.so (e.g. on UNIX) which is good, but for some reason the static library name is changed to libtidys.a. this is not standard library behavior and seems entirely unnecessary. can the s be dropped so normal linkage works ?
The text was updated successfully, but these errors were encountered:
It looks like this was a Windows-driven deliberate decision way back in efb8e37 (2015).
Due mainly to windows where the static and shared libraries have the same
name, appended an 's' to the static library.
Sure enough, when I build on Windows, I see something call tidy.lib, so there's obviously a conflict. I'm not a Windows programmer, but the best I could come up with is that Windows needs some type of stupid "stub" file that references the actual dynamic library, so it looks like we're stuck with it.
@vapier, I see in the CMakeLists.txt where it would be trivial to define a "proper" name (sans s) for everything but Windows, but I'd really like to try to keep things consistent across platforms, if possible. In what ways is the added s an actual problem? What about it being "non-standard" is the issue? Does your linker automatically assume tidy.h has a tidy.lib in the library path, and you're forced to correct it?
If so, that's good enough for me, but I don't want to assume things before I make a change; I need to understand that there's actually a problem that this would solve before making the (trivial) change.
the shared library is installed as
libtidy.so
(e.g. on UNIX) which is good, but for some reason the static library name is changed tolibtidys.a
. this is not standard library behavior and seems entirely unnecessary. can thes
be dropped so normal linkage works ?The text was updated successfully, but these errors were encountered: