Então, qual é a história sobre a libcouchbase e o Windows?

Há alguns dias, mostrei um programa de exemplo usando a libcouchbase para criar um pequeno aplicativo para colocar dados em um cluster do Couchbase, mas o código não foi compilado no Windows. Isso não significa, de forma alguma, que a libcouchbase não funcione no Windows, mas sim que eu estava com pressa para escrever a publicação no blog e não tive tempo de consertar tudo a tempo para a publicação no blog.

Nesta postagem do blog, mostrarei como é fácil colocar tudo em funcionamento usando o Windows 7 e o Microsoft Visual Studio 2010. Além disso, você precisa download e instale o git para poder verificar o código-fonte (selecione a opção que deseja colocar o git no caminho (não o conjunto completo do msys, mas apenas o git)).

Tenho que admitir que estou longe de ser um "desenvolvedor hardcore do Windows", portanto, há muitas coisas que não sei sobre a plataforma. Por exemplo, não sei onde devo instalar arquivos de cabeçalho e bibliotecas de terceiros, então decidi que vou instalar todos eles em C:local (com um diretório install, lib e bin). Ficaria feliz se alguém pudesse me dizer como devo fazer isso ;-)

Então, vamos abrir o prompt de comando do Visual Studio e começar a criar tudo:

Ambiente de configuração para usar as ferramentas do Microsoft Visual Studio 2010 x86.
C:Arquivos de Programas (x86)Microsoft Visual Studio 10.0VC> cd %HOMEPATH%
C:UsersTrond> mkdir build
C:UsersTrond> cd build

Como vamos compilar dll's, você precisa definir C:localbin em seu caminho para que o vinculador de tempo de execução encontre as dll's:

C:UsersTrondbuild> definir PATH=c:localbin;%PATH%

Precisamos instalar duas dependências antes de podermos compilar a libcouchbase propriamente dita. Vamos dar uma olhada em todo o código-fonte que vamos usar:

C:UsersTrondbuild> git clone git://github.com/membase/libisasl.git
C:UsersTrondbuild> git clone git://github.com/membase/libvbucket.git
C:UsersTrondbuild> git clone git://github.com/couchbase/libcouchbase.git
C:UsersTrondbuild> git clone git://github.com/membase/memcached.git
C:UsersTrondbuild> git clone git://github.com/trondn/vacuum.git
A primeira dependência que vamos criar é a biblioteca SASL. Essa é a biblioteca que a libcouchbase usa para se autenticar nos servidores Couchbase. Para compilar e instalar a biblioteca, basta executar:
C:UsersTrondbuild> cd libisasl
C:UsersTrond Norbyebuildlibisasl> nmake -f NMakefile install
Isso instalará a libisasl com seus arquivos de cabeçalho e bibliotecas em c:local.
 
A próxima biblioteca que precisamos compilar é a libvbucket; a biblioteca que a libcouchbase usa para descobrir onde um vbucket está localizado (se você não sabe o que é um vbucket, não precisa saber). Sua compilação é tão fácil quanto a da libvbucket:
C:UsersTrondbuildlibisasl> cd ..libvbucket
C:UsersTrondbuildlibvbucket> nmake -f NMakefile install
A próxima coisa que precisamos fazer é instalar alguns arquivos de cabeçalho que o libcouchbase precisa durante o tempo de compilação. Esses arquivos de cabeçalho contêm as definições de protocolo de que a libcouchbase precisa (mas não são necessárias para o aplicativo). Portanto, vamos instalá-los (para facilitar a compilação da libcouchbase)
C:UsersTrondbuildlibvbucket> cd ..memcached
C:UsersTrondbuildmemcached> git checkout -b branch-20 origin/branch-20
C:UsersTrondbuildmemcached> mkdir c:localincludememcached
C:UsersTrondbuildmemcached> copy includememcached c:localincludememcached
Então, vamos em frente e compilar a libcouchbase!
C:UsersTrondbuildmemcached> cd ..libcouchbase
C:UsersTrondbuildlibcouchbase> nmake -f NMakefile install
Acho que a maioria dos desenvolvedores do Windows não usa o nmake durante o desenvolvimento, mas usa o IDE completo. É por isso que criei um projeto que você pode abrir no projeto de vácuo. Portanto, sinta-se à vontade para abrir esse projeto agora, e ele deverá ser compilado sem problemas. 
 
Agora, precisaremos de um servidor Couchbase ao qual possamos nos conectar. Se você não tiver nenhum em execução, deverá Faça o download e instale um agora. 
 
Vamos criar o diretório de spool e iniciar o servidor a vácuo...
C:UsersTrondbuildvacuumDebug> mkdir c:vacuum
C:UsersTrondbuildvacuumDebug> vacuum -h 127.0.0.1:8091
E você pode começar a copiar arquivos JSON para C:vácuo e vê-los sendo adicionados ao cluster do Couchbase!
Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Trond Norbye, desenvolvedor sênior, Couchbase

Trond Norbye é arquiteto de software na Couchbase. Principal colaborador dos projetos Couchbase e Memcached. Criou as bibliotecas de clientes C/C++ e node.js do Couchbase.

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.