簡體   English   中英

如何使用mongo-cxx-driver設置Visual Studio項目設置?

[英]How to set up Visual Studio project settings with mongo-cxx-driver?

我已經成功在Windows 10上為C ++構建了MongoDB驅動程序的3.0.3版本。

CMAKE_INSTALL_PREFIX = C:\\ mongo-cxx驅動程序

但是我不知道如何在Visual Studio 2015中設置可以使用該驅動程序的項目。
我在這里找到了這篇文章 ,但我不知道確切的解決方案。 我嘗試了以下屬性,但失敗了:

  • C / C ++>其他包含目錄:C:\\ mongo-c-driver \\ include \\ libbson-1.0; C:\\ mongo-c-driver \\ include \\ libmongoc-1.0; C:\\ mongo-cxx-driver \\ include \\ bsoncxx \\ v_noabi; C:\\ mongo-cxx-driver \\ include \\ mongocxx \\ v_noabi;%(AdditionalIncludeDirectories)
  • 鏈接器>其他庫目錄:C:\\ mongo-cxx-driver \\ lib;%(AdditionalLibraryDirectories)

Visual Studio不會標記任何錯誤,但是當我嘗試編譯代碼時,出現401錯誤。
我希望有一個人可以幫助我。

編輯:所有401錯誤的完整列表存儲在此處

編輯:我開始一個新項目,並使用完全相同的設置。 現在我只得到14個錯誤。 錯誤列表存儲在此處(編輯:已刪除的文件)。

編輯:我添加了以下配置:

  • 配置管理器>活動解決方案平台:x64
  • C / C ++>其他包含目錄:C:\\ Program Files \\ boost \\ boost_1_62_0;

現在我得到以下錯誤

我也在嘗試使用VS2015(Windows7)構建驅動程序。 我對項目進行了以下更改:

# C/C++ | General | Additional Include Directories:C:\work\mongo-cxx\mongo-cxx-driver-r3.0.3\src\bsoncxx\include\libbson-1.0;C:\work\mongo-cxx\mongo-cxx-driver-r3.0.3\src\mongocxx\include\libmongoc-1.0;C:\work\mongo-cxx\mongo-cxx-driver-r3.0.3\src;C:\work\mongo-cxx\libbson-1.5.0\src\bson;C:\work\mongo-cxx\mongo-c-driver-1.5.0\src\mongoc;

# C/C++ | Preprocessor | Preprocessor Definitions:MONGOCXX_STATIC;BSONCXX_STATIC;**

# Librarian | General | Additional Dependencies:libbsoncxx.lib;mongoc-static-1.0.lib;

# Librarian | General | Additional Dependencies:C:\work\mongo-cxx\mongo-cxx-driver-r3.0.3\src\bsoncxx\$(Configuration);C:\work\mongo-cxx\mongo-c-driver-1.5.0\$(Configuration);

# Librarian | General | Link Library Dependencies: Yes

但是,當我嘗試通過測試示例鏈接靜態庫時,出現鏈接器錯誤,例如:

未解析的外部符號__imp_bson_append_array。

似乎在項目設置中還應該更改其他內容。

這是一個示例.vcxproj,假定組件位於單獨的目錄中。 您可以將其與您擁有的進行比較:

 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <LinkIncremental>true</LinkIncremental>
    <IncludePath>c:\local\boost_1_59_0\;C:\mongo-cxx-driver\include\mongocxx\v_noabi;C:\mongo-cxx-driver\include\bsoncxx\v_noabi;C:\mongo-c-driver\include\libmongoc-1.0;C:\mongo-c-driver\include\libbson-1.0;$(IncludePath)</IncludePath>
    <LibraryPath>c:\libbson\lib;c:\mongo-c-driver\lib\;c:\mongo-cxx-driver\lib\;c:\libbson\lib;$(LibraryPath)</LibraryPath>
  </PropertyGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <ClCompile>
      <PrecompiledHeader>Use</PrecompiledHeader>
      <WarningLevel>Level3</WarningLevel>
      <Optimization>Disabled</Optimization>
      <PreprocessorDefinitions>MONGOCXX_STATIC;BSONCXX_STATIC;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <SDLCheck>true</SDLCheck>
    </ClCompile>
    <Link>
      <SubSystem>Console</SubSystem>
      <GenerateDebugInformation>true</GenerateDebugInformation>
      <AdditionalDependencies>libmongocxx.lib;libbsoncxx.lib;mongoc-static-1.0.lib;bson-1.0.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>

首先感謝大家的幫助! 我有了以下設置的workig解決方案:

  • 配置管理器>活動解決方案平台:x64
  • C / C ++>其他包含目錄:C:\\ mongo-c-driver \\ include \\ libbson-1.0; C:\\ mongo-c-driver \\ include \\ libmongoc-1.0; C:\\ mongo-cxx-driver \\ include \\ bsoncxx \\ v_noabi; C:\\ mongo-cxx-driver \\ include \\ mongocxx \\ v_noabi; C:\\ Program Files \\ boost \\ boost_1_62_0;
  • 鏈接器>其他庫目錄:C:\\ mongo-cxx-driver \\ lib;
  • 鏈接器>輸入>其他依賴項:bsoncxx.lib; mongocxx.lib;
  • 構建事件>構建后事件:COPY“ C:\\ mongo-cxx-driver \\ bin \\ bsoncxx.dll”“ $(OutDir)”; COPY“ C:\\ mongo-cxx-driver \\ bin \\ mongocxx.dll”“ $(OutDir)“;復制” C:\\ mongo-c-driver \\ bin \\ libmongoc-1.0.dll“” $(OutDir)“;復制” C:\\ mongo-c-driver \\ bin \\ libbson-1.0.dll “” $(OutDir)“;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM