1
因此,在編譯MongoDB快速入門(新驅動程序)提供的代碼片段之後,我得到了一個非常奇怪的編譯結果。MongoDB示例未能使用不同標誌進行編譯
#include <iostream>
#include <bsoncxx/builder/stream/document.hpp>
#include <bsoncxx/json.hpp>
#include <mongocxx/client.hpp>
#include <mongocxx/instance.hpp>
int main(int, char**) {
mongocxx::instance inst{};
mongocxx::client conn{};
bsoncxx::builder::stream::document document{};
auto collection = conn["testdb"]["testcollection"];
document << "hello" << "world";
collection.insert_one(document.view());
auto cursor = collection.find({});
for (auto&& doc : cursor) {
std::cout << bsoncxx::to_json(doc) << std::endl;
}
}
代碼完全編譯與
c++ --std=c++11 hellomongo.cpp -o hellomongo $(pkg-config --cflags --libs libmongocxx)
但未能編譯的時候我犯了一個生成文件,並添加一些標誌
CXX=g++
FLAGS=-v -Wall --std=c++11 -I/usr/local/include
EXENAME=matchingengine
SOURCES=main.cpp
OBJECTS=main.o
all: $(EXENAME)
$(EXENAME): $(OBJECTS)
$(CXX) $(FLAGS) $(SOURCES) -o $(EXENAME)
clean:
rm *o $(EXENAME)
我不斷收到
main.cpp:3:10: fatal error: 'bsoncxx/builder/stream/document.hpp' file not found
在哪裏我調整了 - 我包含指向bsoncxx所在位置的目錄。請幫我解決這個編譯器問題。
高興地看到,你得到它的工作 – acm
後4小時:) –
FYI你應該仍然在你的makefile使用pkgconfig。這是獲取庫所需標誌的首選方法。我們感謝您嘗試新的C++驅動程序預發行版。請隨時通過https://jira.mongodb.org/browse/CXX – acm