栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

CentOS7中安装MP-SPDZ

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CentOS7中安装MP-SPDZ

CentOS7中安装MP-SPDZ
  • 前言
  • 一、依赖库汇总
  • 二、问题
    • 1.GCC版本不对
    • 2. libsodium库有问题
    • 3. libtool 的版本有问题
    • 4. boost版本问题
    • 5. 安装 libboost-dev找不到包
    • 6. 杂项


前言

       在CentOS中需要依赖库的名称以及版本与MP-SPDZ官网提供的版本不统一,这里记录一下。

版本信息:
       操作系统:CentOS 7
       MP-SPDZ: 0.2.9


一、依赖库汇总
yum install autoconf gcc gcc-c++ git libboost-dev libboost-thread-dev 
libgmp3-dev libntl-dev libsodium-dev libssl-dev libtool m4 make man 
python sudo texinfo valgrind vim yasm tar bzip2 wget openssl11-devel 
openssl11-static zlib-devel libsodium-devel boost169-devel gmp-devel 
rh-python35 libsodium-static boost169-static zlib-static openssl 
openssl-perl llvm-toolset-7

先使用yum 安装,安装后,下载MP-SPDZ压缩包,解压后。

cd MP-SPDZ
make -j 8 tldr

如果没有报错,那么恭喜你,编译成功。
但是大概率会出问题。

二、问题 1.GCC版本不对

Centos7中默认安装的gcc版本是4.8.5,但是MP-SPDZ需要的版本是5以上,所以需要升级,将环境中的gcc版本变更。
1、安装centos-release-scl

sudo yum install centos-release-scl

2、安装devtoolset,注意,如果想安装8.版本的,就改成devtoolset-8-gcc,以此类推

sudo yum install devtoolset-7-gcc*

3、激活对应的devtoolset,所以你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本

scl enable devtoolset-7 bash

大功告成,查看一下gcc版本

gcc -v

4、直接替换旧的gcc

mv /usr/bin/gcc /usr/bin/gcc-4.8.5

ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc

mv /usr/bin/g++ /usr/bin/g+±4.8.5

ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++

gcc --version

g++ --version
2. libsodium库有问题


安装 libsodium 1.0.18即可,步骤如下:

1、下载并解压

wget https://download.libsodium.org/libsodium/releases/libsodium-1.0.18-stable.tar.gz
tar -zxf libsodium-1.0.18-stable.tar.gz  
cd libsodium-stable

2、编译安装

./configure --prefix=/usr  
make && make check  
sudo make install  
sudo ldconfig
3. libtool 的版本有问题

安装 libtool 2.4.6 可以解决
1、下载并解压

wget http://ftpmirror.gnu.org/libtool/libtool-2.4.6.tar.gz
tar -zxf libtool-2.4.6.tar.gz
cd libtool-2.4.6

2、编译安装

./configure --prefix=/usr
sudo make
sudo make install
sudo ldconfig
4. boost版本问题

1、使用安装包安装boost库,首先要下载安装包,可以到下面的链接找:
https://download.csdn.net/download/kaka__22/85201057

2、下载后解压

tar -zxvf boost-1.70.0.tar.gz

3、进入到解压目录

4、执行里面的脚本bootstrap.sh

./bootstrap.sh

5、有个可执行文件b2

./b2 install

如果不按这个命令编译可能会出现错误,这个要注意

5. 安装 libboost-dev找不到包
yum install boost-devel
6. 杂项

1、编译MP-SPDZ遇到的问题

应该是程序内部冲突的问题。运行一下命令可以解决

make clean

2、编译 .x协议遇到的问题

CentOS 7的系统编译器比较旧,使用以下命令完成

scl enable devtoolset-7 make ...
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/827617.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号