C ++代码在eclipse中编译但在构建时遇到错误“未定义引用”

时间:2013-07-30 13:10:39

标签: c++ namespaces dllexport

这里我有两个C ++项目:Project1和Project2

在project2中,我得到了一个像这样的新类SQLiteWrapper.h

namespace zinc{ 
namespace sql {
    boost::shared_ptr<sqlite3> openDatabase(const std::string& dbPath) ZINC_EXPORT;
}
}

这里ZINC_EXPORT是dllexport的宏。

现在我想从Project1中的Project2调用SQLiteWrapper.h中的函数“openDatabase”

在project1中,我打电话给:

zinc::sql::openDatabase("path");

eclipse没有抱怨,如果我按下F3,它将完全转到project2 / SQLiteWrapper.h / openDataBase()。

但是当我构建project1时,我得到的错误是“未定义引用`zinc :: sql :: openDatabase(std :: string const&amp;)'”

它可能是什么问题?我只是想不出来。

Project1在Project2中调用了很多方法并且它有效,不太确定为什么新类中的新函数不起作用 感谢

0 个答案:

没有答案