簡體   English   中英

為什么mongo C ++驅動程序給我編譯錯誤?

[英]Why is the mongo C++ driver giving me compilation errors?

我已經使用github直接安裝了mongo

sudo scons --full install

並具有以下示例源文件

#include <cstdlib>
#include <iostream>
#include <mongo/client/dbclient.h>

void run() {
  mongo::DBClientConnection c;
  c.connect("localhost");
}

int main() {
  try {
    run();
    std::cout << "connected ok" << std::endl;
  } catch( const mongo::DBException &e ) {
    std::cout << "caught " << e.what() << std::endl;
  }
  return EXIT_SUCCESS;
}

當我跑步

g++ tutorial.cpp -pthread -lmongoclient -lboost_thread-mt -lboost_filesystem 
-lboost_program_options -lboost_system -o tutorial

我得到了錯誤

In file included from /usr/local/include/mongo/util/net/hostandport.h:21:0,
                 from /usr/local/include/mongo/util/net/message.h:24,
                 from /usr/local/include/mongo/client/dbclientinterface.h:30,
                 from /usr/local/include/mongo/client/connpool.h:23,
                 from /usr/local/include/mongo/client/dbclient.h:32,
                 from tutorial.cpp:3:
/usr/local/include/mongo/db/server_options.h:34:51: fatal error: 
mongo/util/options_parser/environment.h: No such file or directory
compilation terminated.

我查看了/ usr / local / include / mongo / util,但是options_parser文件夾不在其中。

在遵循MongoDB網站上的文章之后,我自己也遇到了同樣的錯誤。 我最終要做的是將標題從下載目錄復制到我的包含目錄。

    sudo cp -R ~/Downloads/mongo-master/src/mongo/util/options_parser /usr/local/include/mongo/util/

其中mongo-master是從MongoDB的GitHub提取的目錄的名稱。 希望這對您有幫助。

暫無
暫無

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

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