所以我有这个代码:
soci::session* mSql;
mSql = new soci::session("sqlite3", "database.db");
soci::rowset<soci::row> rs = (mSql->prepare << "SELECT * FROM tab");
当我在创建它的机器上运行它时,它运行良好。
但是,当我在另一台计算机上以物理方式或通过 ssh 运行它时,我收到此错误:./executable: symbol lookup error: ./executable: undefined symbol: _ZN4soci7details14statement_impl19exchange_for_rowsetERKNS0_8type_ptrINS0_14into_type_baseEEE
错误发生在第三行。
数据库权限为 777。
为什么会发生这种情况,我该如何解决?