我在Debian 8.7中编译了Fiware-orion并使用了MongoDB v2.4.10。 Fiware-orion编译没有错误,但make unit_test返回一些错误。我按照第http://fiware-orion.readthedocs.io/en/master/admin/build_source/页上的步骤使用了apt存储库中的现有库。
我安装了必要的构建工具:
apt install scons build-essential make cmake
我安装了必要的库:
apt install libboost-all-dev libcurl4-openssl-dev libgnutls28-dev libgcrypt20-dev libssl-dev uuid-dev
我按照https://github.com/telefonicaid/fiware-orion/issues/1681#issuecomment-173003764的建议安装了Legacy C ++ Driver 1.0.2版本的MongoDB驱动程序。
make unit_test返回以下错误:
[----------]全球测试环境拆除
[=======]从135个测试用例中进行了899次测试。 (总共4440毫秒)
[PASSED] 895次测试。
[FAILED] 4项测试,如下所列:
[FAILED] mongoQueryContextRequest_filters.outsideRange_n
[FAILED] mongoQueryContextGeoRequest.queryGeoCircleOut
[FAILED] mongoQueryContextGeoRequest.queryGeoPolygonOut1
[FAILED] mongoQueryContextGeoRequest.queryGeoPolygonOut2
我该如何解决这个问题?
答案 0 :(得分:1)
需要考虑两个因素:
您应该使用Mongo C ++旧驱动程序版本1.1.2(请参阅building from sources documentation。这可能不是单元测试失败的原因,但无论如何都是可取的。
您应该至少使用MongoDB 2.6(检查requiresments)。具体来说,您不应该在文档中警告使用MongoDB 2.4:
推荐的MongoDB版本是2.6 / 3.0 / 3.2。建议不要使用MongoDB 2.4.x.,因为某些地理定位查询可能无效。
此外,您不应该使用MongoDB 2.4(不仅仅是Orion),因为它在2016年3月到期(检查MongoDB official documentation)。