vs2012 C++工程使用 mysql 库编译问题

2017-06-14 23:51:41 +08:00
 beric
由于工程需要 DEBUG 版本,在官方下了 mysql 的源码和 mysqlcppconn 的源码进行编译生成 DEBUG 版本的静态 LIB 库,然后在自己工程加入这两个库的时候用 DEBUG 编译就报错了。想问一下这个是什么原因导致?谢谢

1>rcmysqlcpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const & __cdecl sql::SQLException::getSQLState(void)const " (__imp_?getSQLState@SQLException@sql@@QEBAAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ) referenced in function __catch$?dbconn@rcmysqlcpp@@QEAAHXZ$0
1>rcmysqlcpp.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: int __cdecl sql::SQLException::getErrorCode(void)const " (__imp_?getErrorCode@SQLException@sql@@QEBAHXZ) referenced in function __catch$?dbconn@rcmysqlcpp@@QEAAHXZ$0
1677 次点击
所在节点    问与答
4 条回复
xz
2017-06-15 13:14:57 +08:00
尴尬。又被艾特了
gnaggnoyil
2017-06-15 16:51:37 +08:00
你这八成是 abi 没兼容吧。检查一下你的库和你自己用的 visual studio 版本是否一致。

话说现在还用 vs2012 是不是太老了点,好多 cpp 新特性不能用
beric
2017-06-15 19:28:49 +08:00
@xz 报错了……
beric
2017-06-15 19:29:26 +08:00
@gnaggnoyil 嗯,搞好了,因为用了一些第三方库,那些库都要统一编译方式才行

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/368485

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX