Manual de compilação do datad

De MSTECH wiki
Revisão de 13h48min de 3 de outubro de 2016 por Silvio.limeira (Discussão | contribs)

Ir para: navegação, pesquisa

Requisitos para compilação

Antes de compilarmos o datad devemos baixar e compilar as dependências, e também instalar o Cmake para geração os makefiles. Seguem as dependências:

Boost C++ Library Versão 1.59.0

 http://www.boost.org/

Cripto Library C++ Versão 5.6.4

 https://www.cryptopp.com/

Cpp-Netlib C++ Network Library

 https://github.com/cpp-netlib/cpp-netlib
 Dentro da biblioteca cpp-netlib existem dependências, o melhor é melhor clonar o repositório e as dependências com os seguintes comandos:
 1) git clone --depth=50 --branch=0.11-devel https://github.com/cpp-netlib/cpp-netlib.git cpp-netlib
 2) git submodule update --init –recursive
 * Também será necessário a biblioteca Boost versão 1.58.0

Cmake Verão 3.6.2 ==

 https://cmake.org/download/

Instalando o Cmake Verão 3.6.2

Basta baixar o MSI de instalação para arquitetura x86 denominado “cmake-3.6.2-win32-x86.zip” e instalar normalmente no windows. Devemos confirmar se o caminho do executável está na variavel PATH do windows para podermos chamá-lo de qualquer pasta quando necessário.

Compilando Boost C++ Library

Para compilar o DataD precisamos da versão 1.59.0 e para compilar a Cpp-netlib precisamos da versão 1.58.0. Os comando para instalação da boost é o mesmo para as duas versões.

Logo após extrair o conteúdo da biblioteca devemos entrar na sua pasta e executar os seguintes comandos:

 1) Bootstrap.bat
 2) "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
 3) bjam –clean
 4) bjam -j4 --debug-symbols=on --build-type=complete toolset=msvc-14.0 threading=multi runtime-link=shared address-model=32
 5) bjam -j4 --debug-symbols=on --build-type=complete toolset=msvc-14.0 threading=multi runtime-link=static address-model=32

Compilando a Biblioteca Crypto 5.6.4

Basta abrir a solução denominada “cryptest” e compilar o projeto da biblioteca denominada “cryplib”

Atens de compilar o projeto devemos conferir suas configurações no Menu Project →Properties:

 C/C++ → Code Generation
   Enable C++ Exceptions: Yes (/Ehsc)
   Runtime Library: Multi-thread Debug (/MTd)

Compilando a Cpp-Netlib C++ Network Library

 * Lembre-se: A Boost C++ Library 1.58.0 deve estar instalada
 Devemos primeiro clonar a versão 0.12.0 e suas dependências com os seguintes comandos:
   1) git clone --depth=50 --branch=0.11-devel https://github.com/cpp-netlib/cpp-netlib.git cpp-netlib
   2) git submodule update --init –recursive
   3) Para gerar os arquivos da solução no windows devemos executar o seguinte script .bat
     SET BOOST_VER=1.58.0
     SET BUILD_SHARED_LIBS="OFF"
     SET CMAKE_BUILD_TYPE="Debug"
     SET ENABLE_HTTPS="OFF"
     cmake -DCPP-NETLIB_BUILD_TESTS=OFF -DCMAKE_BUILD_TYPE=Debug 			
         -DBUILD_SHARED_LIBS=OFF -DCPP-NETLIB_ENABLE_HTTPS=OFF 			
         -DBOOST_INCLUDEDIR=C:/boost_1_58_0 		
         -DBOOST_LIBRARYDIR=C:/boost_1_58_0/stage/lib 
         -DCMAKE_CXX_FLAGS=-std=c++11 .
   4) Devemos abrir o arquivo da solução denominado “CPP-NETLIB.sln” que foi criado pelo cmake.
     Antes de compilar os seguintes projetos: cppnetlib-uri, cppnetlib-client-connections ecppnetlib-server-parses da solução CPP-NETLIB devemos     conferir as seguintes configurações no menu Project →Properties:
     a) C/C++ → Geral
       Additional Include Directories: (Caminho da boost e da própria cpp-netlib)
       C:\boost_1_58_0;C:\build-cpp-netlib\cpp-netlib11;%(AdditionalIncludeDirectories)
     b) C/C++ → Code Generation
       Enable C++ Exceptions: Yes (/Ehsc)
       Runtime Library: Multi-thread Debug (/MTd)


Finalmente compilando o DataD

  • Lembre-se: A Boost C++ Library 1.59.0 deve estar instalada

1) Para gerar os arquivos da solução no windows devemos executar o seguinte script .bat

cmake -DCMAKE_CXX_FLAGS=-std=c++11 -DCMAKE_BUILD_TYPE="Debug" .

2) Devemos abrir o arquivo da solução denominado “datad.sln” que foi criado pelo cmake.

Antes de compilar o projeto devemos confirmar as seguintes configurações:

  • Menu: Project →Properties

a) C/C++ → Geral Additional Include Directories: (Caminho da boost e da própria cpp-netlib) C:\boost_1_58_0;C:\build-cpp-netlib\cpp-netlib11;%(AdditionalIncludeDirectories)

b) C/C++ → Code Generation Enable C++ Exceptions: Yes (/Ehsc) Runtime Library: Multi-thread Debug (/MTd)