Я пытаюсь следовать это руководство, и я в настоящее время на шаге 3.
Итак, после запуска
curl -OL https://github.com/mongodb/mongo-cxx-driver/archive/r3.0.1.tar.gz
tar -xzf r3.0.1.tar.gz
cd mongo-cxx-driver-r3.0.1/
Я пытаюсь сделать аналогичные команды, как в Руководство по Windows для Mongoc:
Если я просто
cmake -G "Visual Studio 14 2015 Win64" "-DCMAKE_BUILD_TYPE=Release" "-DCMAKE_INSTALL_PREFIX=C:/mongo-cxx-driver"
Я получаю ошибку
CMake Error at cmake/FindLibBSON.cmake:37 (message):
Don't know how to find libbson; please set LIBBSON_DIR to the prefix
directory with which libbson was configured.
Call Stack (most recent call first):
src/bsoncxx/CMakeLists.txt:67 (find_package)
Итак, здесь я пробовал разные вещи, такие как добавление путей в каталог libsson:
cmake -G "Visual Studio 14 2015 Win64" "-DCMAKE_BUILD_TYPE=Release" "-DCMAKE_INSTALL_PREFIX=C:/mongo-cxx-driver" "-DLIBBSON_DIR=C:/mongo-c-driver/lib/pkgconfig/" "-DLIBMONGOC_DIR=C:/mongo-c-driver/lib/pkgconfig/" "-DBOOST_ROOT=C:/local/boost_1_62_0/"
Это на самом деле работает, но потом, когда я пытаюсь построить с
msbuild.exe ALL_BUILD.vcxproj
Я получаю ошибку:
C:\Users\Erik\Documents\mongo-cxx-driver-r3.0.1\src\bsoncxx\array\view.cpp(21): fatal error C1083: Cannot open include
file: 'bson.h': No such file or directory [C:\Users\Erik\Documents\mongocxx-driver-r3.0.1\src\bsoncxx\bsoncxx_static.v
cxproj]
Этот файл, «bson.h», кажется, находится в директории
C:\mongo-c-driver\include\libbson-1.0
но я не уверен, почему он не находит файл или как я мог это сделать.
Очень ценю любой вклад по этому вопросу.
Вы не устанавливаете LIBBSON_DIR
а также LIBMONGOC_DIR
правильно. В вашем случае они оба должны быть настроены на C:\mongo-c-driver
, Система сборки автоматически добавит include
а также lib
на этот базовый путь по мере необходимости. Вы можете найти чтение сценария appveyor информативным:
CMAKE_INSTALL_PREFIX
для libmongoc здесь: https://github.com/mongodb/mongo-cxx-driver/blob/master/appveyor.yml#L25LIBBSON_DIR
а также LIBMONGOC_DIR
здесь при вызове CMake для mongocxx: https://github.com/mongodb/mongo-cxx-driver/blob/master/appveyor.yml#L3118 октября 2016
Эта проблема также возникает с Mac OS X и, возможно, с другими Un * xes.
curl -OL https://github.com/mongodb/mongo-cxx-driver/archive/r3.0.2.tar.gz
build
каталог, но в корень:cd mongo-cxx-driver-r3.0.2
cmake -DCMAKE_BUILD_TYPE = Release -DCMAKE_INSTALL_PREFIX = / опт / mongodbDriverCpp -DLIBBSON_DIR = / опт / mongodbDriverCpp -DLIBMONGOC_DIR = / опт / mongodbDriverCpp -DCMAKE_CXX_STANDARD = 14
делать сделать установку
/opt/mongodbDriverCpp
в ваш правильный каталог):c ++ --std = c ++ 11 test.cpp -o run.test -I / Opt / mongodbDriverCpp / включить / bsoncxx / v_noabi -I / opt / mongodbDriverCpp / include / mongocxx / v_noabi / -L / opt / mongodbDriverCpp / lib -l Mongocxx -l bsoncxx
export LD_LIBRARY_PATH = / opt / mongodbDriverCpp / lib ./run.test