我正在使用带有MySQL和sqlite3后端的SOCI C++ 3.2构建应用程序时遇到问题。这是我包含的标题:

#include <soci.h>
#include <soci-backend.h>
#include <soci-mysql.h>
#include <soci-sqlite3.h>

这是我遇到的建筑错误:
/usr/include/soci/sqlite3/soci-sqlite3.h:263: erreur: cannot declare variable ‘soci::sqlite3’ to be of abstract type ‘const soci::sqlite3_backend_factory’
/usr/include/soci/sqlite3/soci-sqlite3.h:257: note:   because the following virtual functions are pure within ‘const soci::sqlite3_backend_factory’:
/usr/local/include/soci/soci-backend.h:271: note:       virtual soci::details::session_backend* soci::backend_factory::make_session(const soci::connection_parameters&) const

我在网络上找不到有关此问题的太多信息,因此可以提供任何帮助!

最佳答案

我理解了这个问题,soci-3.1最初是安装在我的环境中的(不是我自己安装的),并且我的autoconf宏正在从源代码和旧版本执行的soci-3.2安装中选择文件。

所以我不得不卸载前一个...

关于c++ - Soci C++ sqlite3后端摘要生成,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16077484/

10-12 01:17