最近要在win10下跑orb-slam2,所以要配置一番,DBoW2是其中一个库。
主要过程参考
http://blog.csdn.net/yfic000/article/details/75773105
一路下来,发现从dll导出类形成lib文件这一步老是出错,类似于
Error C2491 'DBoW2::General Scoring::LOG EPS': definition of dllimport static data member not allowed
这样的报错。
如果把相关的类导出去掉,则后面测试的时候会出现error 2001或2019之类的错误,就是找不到函数的实现,说明lib没有配置好。
后来发现,我这里是要从dll导出啊,应该都是dllexport才对,怎么会有dllimport数据呢?
打开项目C/C++中的预处理器,发现里面的是DBoW2_API,而不是DBOW2_API
难怪!把它改为DBOW2_API再进行编译即可