Baixe e instale o libmongoc em seu sistema, abra o Visual Studio, selecione "Arquivo -> Novo -> Projeto ..." e crie um novo Aplicativo de Console do Windows32 .

Lembre-se de mudar a plataforma de 32-bit para 64-bit:

Clique com o botão direito do mouse no seu aplicativo de console no Solution Explorer e selecione "Properties". Escolha editar propriedades para "Todas as configurações", expanda as opções "C/C++" e escolha "Geral". Adicione aos "diretórios de inclusão adicionais" estes caminhos:
C:\mongo-c-driver\include\libbson-1.0 C:\mongo-c-driver\include\libmongoc-1.0

(Se você escolheu um $PREFIX
diferente ao instalar o mongo-c-driver, seus caminhos de inclusão serão diferentes.)
Também na caixa de diálogo Propriedades, expanda as opções do "Linker" e escolha "Entrada", e adicione às "Dependências adicionais" estas bibliotecas:
C:\mongo-c-driver\lib\bson-1.0.lib C:\mongo-c-driver\lib\mongoc-1.0.lib

Adicionar essas bibliotecas como dependências fornece símbolos de vinculador para construir seu aplicativo, mas, para realmente executá-lo, asDLLs de libbson e libmongoc devem estar em seu caminho executável. Selecione "Depuração" na caixa de diálogo Propriedades e defina a opção "Ambiente" para:
PATH=c:/mongo-c-driver/bin

Por fim, inclua "mongoc/mongoc.h" no "stdafx.h" do seu projeto:
Link estático
Seguindo as instruções acima, você vinculou dinamicamente seu aplicativo às DBs libbson e libmongoc. Essa geralmente é a escolha certa. Se, em vez disso, você quiser vincular estaticamente, atualize sua lista de "Dependências adicionais" removendo bson-1.0.lib
e mongoc-1.0.lib
e substituindo-os por estas bibliotecas:
C:\mongo-c-driver\lib\bson-static-1.0.lib C:\mongo-c-driver\lib\mongoc-static-1.0.lib ws2_32.lib Secur32.lib Crypt32.lib BCrypt.lib

(Para explicar a finalidade de cada biblioteca: bson-static-1.0.lib
e mongoc-static-1.0.lib
são arquivos estáticos do código do driver. A biblioteca de soquete ws2_32
é exigida pela libbson, que usa a rotina de soquete gethostname
para ajudar a garantir a exclusividade do ObjectId. A biblioteca BCrypt
é usada pelo libmongoc para conexões TLS com o MongoDB, e Secur32
e Crypt32
são necessários para métodos de autenticação empresarial, como o Kerberos.)
Finalmente, defina dois símbolos de pré-processador antes de incluir mongoc/mongoc.h
em seu stdafx.h
:
Fazer essas alterações em seu projeto só é necessário para a vinculação estática; para a maioria das pessoas, as instruções de vinculação dinâmica acima são preferidas.
Próximos passos
Agora você pode construir e depurar aplicativos no Visual Studio que usam libbson e libmongoc. Continue com Fazer uma conexão no tutorial para saber como se conectar ao MongoDB e executar operações.