Open hypernewbie opened 6 years ago
Never mind. The DLL version fails to compile with:
Severity Code Description Project File Line Suppression State
Error LNK2019 unresolved external symbol __imp__invalid_parameter referenced in function "void __cdecl std::_Deallocate(void *,unsigned __int64,unsigned __int64,unsigned __int64)" (?_Deallocate@std@@YAXPEAX_K1_K@Z) IPE X:\code\ipe\ipe_core.obj 1
I'm sure this is a great library if someone actually gets it to link.
Severity Code Description Project File Line Suppression State Error LNK2038 mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MDd_DynamicDebug' in ipe_core.obj IPE X:\code\ipe\glbinding.lib(Binding_objects_a.obj) 1
I built glbinding with /MD. Why is the linker showing /MDd when I include Binding.h? Is this a VS bug that this library triggers? Is there some kind of hardcoded #define somewhere adding linker flags? I suspect that something deep in glbinding there's some kind of #ifdef NDEBUG somewhere that adds linker flags, so when I include Binding.h it adds /MDd linker flag to my source code ipe_core.obj.
I think I'm going to go with the DLL version, which works well. But whatever is happening here is insane, please stop this.