临安区规划建设局网站,龙岗高端网站建设,市场营销的对象有哪些,做薪酬调查的网站#xff08;2021.08.04#xff09;最近为了安装 IBM 的开源项目 HElib C#xff0c;需要在服务器上先安装GMP和NTL#xff0c;NTL需要依赖GMP#xff0c;所以先来安装一下GMP#xff0c;记录一下在服务器上安装成功的过程#xff1a;#xff09; 直接安装libgmp二进制文… 2021.08.04最近为了安装 IBM 的开源项目 HElib C需要在服务器上先安装GMP和NTLNTL需要依赖GMP所以先来安装一下GMP记录一下在服务器上安装成功的过程 直接安装libgmp二进制文件
sudo apt-get install libgmp-dev如果选择直接安装编译好的二进制文件可以跳到看「检查是否安装成功」部分进行测试如果想要编译安装就接着往下看
安装依赖
我的系统是Ubuntu 18.04 LTS先安装一下GMP库的依赖
sudo apt-get install m4下载并解压GMP压缩文件
在GMP的官网1有.tar.lz.tar.gz.tar.zst版本的压缩文件可以下载到本地再上传到服务器也可以复制链接后直接在服务器上使用 wget/curl 下载这边以gmp-6.2.1为例
# 1. 使用 wget 下载 gmp-6.2.1.tar.xz
wget https://gmplib.org/download/gmp/gmp-6.2.1.tar.xz# 2. 或者使用 curl 下载 gmp-6.2.1.tar.xz
curl https://gmplib.org/download/gmp/gmp-6.2.1.tar.xz --output gmp-6.2.1.tar.xz然后进行解压 2
# 1. 对gmp-6.2.1.tar.xz进行解压
xz -d gmp-6.2.1.tar.xz tar xvf gmp-6.2.1.tar# 2. 对gmp-6.2.1.tar.gz进行解压
tar -zxvf gmp-6.2.1.tar.gz# 3. 解压zst文件需要先安装zstd包然后再对gmp-6.2.1.tar.zst进行解压
sudo apt install zstd
tar -I zstd -xvf gmp-6.2.1.tar.zst然后就可以开始安装了
编译安装GMP
# 进入gmp目录
cd gmp-6.2.1
# 设置安装路径前缀建议设置为/usr
./configure --prefix/usr --enable-cxx
# 开始编译安装
make
make check
sudo make install检查是否安装成功
可以先进入 /usr/local/lib 目录查看有没有 libgmp 相关的文件。
cd /usr/local/lib
ls
# 大概会包含下面这些文件基本上就说明安装成功了
# libgmp.a libgmp.so.10 libgmpxx.la libgmpxx.so.4.6.1
# libgmp.la libgmp.so.10.4.1 libgmpxx.so libgmpxx.so.4
# libgmp.so libgmpxx.a然后再来编译一个简单的测试
# 使用vim编辑器新建并打开一个文件
vim testGMP.cpp在vim打开的空文件中切换为英文输入法按i来进入插入模式粘贴下面的代码再按esc键退出插入模式输入:wq然后回车即可保存并退出。
#include gmpxx.h
#include iostream
#include stdio.h
using namespace std;
int main()
{mpz_t a, b, c;mpz_init(a);mpz_init(b);mpz_init(c);printf( Input a and b Output a b \n);printf([-] a );gmp_scanf(%Zd, a);printf([-] b );gmp_scanf(%Zd, b);mpz_add(c, a, b);gmp_printf([] c %Zd\n,c);return 0;
}然后可以通过ls命令看到当前目录下面有testGMP.cpp这个文件就可以对其进行编译测试了。
# 编译testGMP.cpp
g testGMP.cpp -o testGMP -lgmp -lm
# 没有报错的话就说明安装成功运行即可
./testGMP根据提示输入大整数a和b到这里就说明测试成功了 Input a and b Output a b
[-] a 11111111111111111111111111
[-] b 22222222222222222222222222
[] c 33333333333333333333333333如果这边文章对你有帮助的话可以给这篇文章点一个赞 后面继续更新「编译安装NTL库」 参考 https://gmplib.org ↩︎ tar.zst 文件格式解压 ↩︎