Missing symbols in TF static for VS15/16Solved

The example project in the TurboFloat static library package v4.3.0.0 fails to build with with VS 2017/2019. The linker reports these missing symbols:

1>TurboFloat-MT.lib(TurboFloat.obj) : error LNK2001: unresolved external symbol "public: __thiscall TF_LIB_NS::GlobalVars::GlobalVars(void (__cdecl*)(void),void (__cdecl*)(void))" (??0GlobalVars@TF_LIB_NS@@QAE@P6AXXZ0@Z)1>TurboFloat-MT.lib(TurboFloat.obj) : error LNK2001: unresolved external symbol "public: __thiscall TF_LIB_NS::GlobalVars::~GlobalVars(void)" (??1GlobalVars@TF_LIB_NS@@QAE@XZ)

To reproduce this error using the example project, define "TURBOFLOAT_STATIC" to link against the static TF library and remove the reference to "TurboFloat.lib" from the linker dependencies. The same errors appear when I try to link to the static libraries with product. But the problem should be easy to reproduce with the sample project.

Also, have you considered creating a combined TA/TF static library package for Windows and Mac? I see that you make these available for Linux/BSD, and that's great. Having it available for all platforms would be helpful.

Thanks

Tim

Thanks, this bugs will be fixed in the next version.

>> "Also, have you considered creating a combined TA/TF static library package for Windows and Mac? "

For Windows, yes, it's coming soon. No need for macOS (currently, at least).

The reason Linux / BSD has combined static libraries (and Windows will soon) is to prevent linker problems. Or, to make things less fragile. Currently, macOS is the most robust when linking static libraries.

Thanks Wyatt, do you have an ETA for the next release? A week? A month?

No hard date.

This is fixed in TF 4.3.2, out now.