endereço de anna:
https://github.com/ucbrise/anna
Código da etapa de instalação:
1.Install Clang and libc++, run:
sudo apt-get update
sudo apt-get install -y build-essential autoconf automake libtool curl make g++ unzip pkg-config wget clang-3.9
O seguinte erro pode ocorrer durante a entrada do comando: E: Não é possível obter o lock / var / lib / dpkg / lock-frontend-open (11: O recurso está temporariamente indisponível); Solução: Consulte o ponto de conexão aqui
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-3.9 1
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-3.9 1
sudo apt-get install -y libc++-dev libc++abi-dev libtbb-dev
2. Instale o cmake
wget https://cmake.org/files/v3.9/cmake-3.9.4-Linux-x86_64.tar.gz
tar xvzf cmake-3.9.4-Linux-x86_64.tar.gz
sudo mv cmake-3.9.4-Linux-x86_64 /usr/bin/cmake
export PATH=$PATH:/usr/bin/cmake/bin
rm cmake-3.9.4-Linux-x86_64.tar.gz
3. Instale o protobuf: após clonar o repositório protobuf, execute:
sudo apt-get install autoconf automake libtool curl make g++ unzip
git clone https://github.com/google/protobuf.git
cd protobuf
git submodule update --init --recursive
./autogen.sh
./configure CXX=clang++ CXXFLAGS='-std=c++11 -stdlib=libc++ -O3 -g'
make
make check
sudo make install
ldconfig
Para problemas de instalação aqui, consulte aqui
4. Construir KVS, execute:
git clone https://github.com/ucbrise/anna.git
cd anna
bash scripts/build_release.sh
(This command will build a KVS that provides last-writer-win consistency. Lattice composition for other consistency levels can be found in kvs/include)
Este problema ocorreu:
CMakeFiles / Makefile2: 423: receita para o destino 'kvs / CMakeFiles / kvs_server.dir / all' falha no
make [1]: *** [kvs / CMakeFiles / kvs_server.dir / all] Erro 2
Makefile: 83: receita para o destino ' all 'falhou
make: *** [all] Erro 2
A solução é a seguinte:
- abrir arquivo vendor / tbb / CMakeLists.txt
- para os dois últimos cmake cmd 'set' neste arquivo, que está usando o valor fixo 'linux_intel64_clang_cc4.8_libc2.19_kernel3.13.0_release'. Isso é o que você obteve na sua mensagem de erro e também a razão pela qual você a recebeu.
- altere este valor para ser igual ao seu env. Por exemplo, estou usando o clang 5.4.0, libc 2.23, kernel 4.4.0, então mudei esse valor para 'linux_intel64_clang_cc5.4.0_libc2.23_kernel4.4.0_release'.
Dicas: Se você não tiver certeza de qual deve ser esse valor em seu env, você pode apenas executar 'scripts / build_release.sh' uma vez. Sim, o build irá falhar, mas então você pode verificar a pasta gerada pelo processo de build, que é 'build / vendor / tbb / src / tbb / build'. Abaixo desta pasta, você encontrará uma subpasta, seu nome é exatamente o valor que você precisa. (在 anna 文件 下 有 相关 的 配置 属性)
Depois de resolver um problema, outro problema apareceu:
clang: erro : o comando do linker falhou com o código de saída 1 (use -v para ver a invocação)
kvs / CMakeFiles / kvs_server.dir / build.make: 181: a receita para o destino 'kvs / kvs_server' falhou no
make [2]: *** [kvs / kvs_server] Erro 1
CMakeFiles / Makefile2: 423: receita para o destino 'kvs / CMakeFiles / kvs_server.dir / all' com falha no
make [1]: *** [kvs / CMakeFiles / kvs_server.dir / all] Erro 2
Makefile : 83: receita para o destino 'todos' falhou na
criação: *** [todos] Erro 2
解决 方法 : 重新 安装 protobuf , 没有 安装 正确。
Execute: bash scripts / build_release.sh
Dica: scripts / build_debug.sh: linha 4: cmake: comando não encontrado
make: *** Nenhum destino especificado e makefile não encontrado. Pare.
O motivo é que as variáveis de ambiente não estão configuradas.
Solução: você pode usar a variável de ambiente temporária export PATH = $ PATH: / usr / bin / cmake / bin
Ou escreva variáveis de ambiente em um arquivo.
código mostrado abaixo:
vim ~ / .bashrc
Adicionar variáveis de ambiente
fonte ~ / .bashrc
Continua