我正在使用Oracle数据访问组件库(ODAC),并将oraocci.lib与/ MD Runtime Library选项链接。在Visual Studio 2015中为空的CLR项目(Windows窗体)。
我对oraocci.lib以及Oracle如何编译它一无所知,只是它是他们SDK中唯一可用的文件,并且它适用于Visual Studio 2015。
我收到致命错误LNK1169:找到一个或多个乘法定义的符号:
MSVCRT.lib(throw_bad_alloc.obj) : error LNK2005: "public: virtual char const * __cdecl std::exception::what(void)const " (?what@exception@std@@UEBAPEBDXZ) already defined in oraocci19.lib(oraocci19.dll)
现在,如果我还链接了cppconnector库的静态版本(MySQL)cppconnector-static.lib,那么错误就会消失了。如果我改为链接动态版本的cppconnector(cppconnector.lib)或根本不链接cppconnector,则该错误仍然存在。
有人可以帮助我诊断吗?增加其他库会使多个已定义符号消失的原因是什么!以及如何消除错误?我的意思不是用/ force:MULTIPLE忽略它。