说明:
安装 NTL 需要安装GMP,安装GMP 首先需要安装 M4。
本文下面要安装的 ntl-11.5.1 应该是只适配 gmp-6.1.2,不然会报错。(在执行安装 ntl 的 make 步骤后,有如下提示信息。)
NTL_GMP_LIP flag set GMP version check (6.1.2/6.1.2)
sudo apt-get install m4
参考链接:Linux 下安装GMP库_JUST-h的博客
概述:在网站 https://ftp.gnu.org/gnu/gmp/ 下载gmp文件,解压 gmp-6.1.2.tar.lz
文件,并安装。
首先安装lzip
sudo apt-get install lzip
然后解压 gmp 压缩包
lzip -d gmp-6.1.2.tar.lz tar -xvf gmp-6.1.2.tar gmp-6.1.2/
然后安装
cd gmp-6.1.2 ./configure --enable-cxx make make check sudo make install
用一个测试文件验证安装成功
#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); gmp_scanf("%Zd%Zd",a,b); mpz_add(c,a,b); gmp_printf("c= %Zd\n",c); return 0; }
编译:
g++ test.cpp -o test -lgmp
运行:
./test
运行结果:(前两行为输入,第三行为输出)
2435679865456789087657890876 c= 4781358775365599087657890856
输入 ls /usr/local/include/
安装成功会显示 gmp.h
和gmpxx.h
输入 ls /usr/local/lib/
安装成功会显示 libgmp.a libgmp.la libgmp.so libgmp.so.10 libgmp.so.10.4.1
以及 libgmpxx.a libgmpxx.la libgmpxx.so libgmpxx.so.4 libgmpxx.so.4.6.1
参考链接:Ubuntu18.04安装ntl库 - _Mind - 博客园
官网:Download NTL 下载一个 (最新)NTL 库:Unix: ntl-11.5.1.tar.gz
在文件存储目录下解压
tar -xzvf ntl-11.5.1.tar.gz ntl-11.5.1/
切换路径
cd ./ntl-11.5.1/src
安装(此处不考虑额外的安装教程,例如:NTL_GF2X_LIB=on)
./configure make make check make install
使用 ls /usr/local/include/
,出现 NTL
即为安装成功
使用 ls /usr/local/lib/
,出现 libntl.a
即为安装成功