Mac安装NTL库
Mac安装NTL库
NTL是一个高性能、可移植的C++库,为任意长度的整数提供数据结构和算法;用于整数和有限域上的向量、矩阵和多项式;以及任意精度的浮点运算。
具有以下功能:
任意长度整数运算和任意精度浮点运算;
整数和有限域上的多项式算术,包括基本算术、多项式分解、不可约判定、最小多项式计算、迹线、范数等计算;
格基归约,包括 非常健壮和快速的Schnorr-Euchner,实现、块 Korkin-Zolotarev 归约,以及块 Korkin-Zolotarev 的新 Schnorr-Horner 剪枝启发式;
整数、有限域和任意精度浮点数的基本线性代数。
NTL同时具备Unix、Mac OS或Windows任意平台上使用,NTL可与GMP一起构建以增强性能,NTL可与GF2X库一起构建,以便在GF(2)上快速计算大型多项式
安装环境:
macOS-M1-8核
GMP安装
GMP是一个用于长整数运算的库,对于基本运算(例如整数乘法),它比NTL的长整数快2-3倍,因此NTL库默认使用GMP库,所以安装NTL库之前首先安装GMP库。
- 下载
为了便于在Mac下解压缩,建议下载tar.xz版本

- 编译&安装
cd gmp-6.2.1
./configure --enable-cxx # 默认安装在/usr/local,在使用configure的时候要加上 --enable-cxx命令,否则不能使用c++库gmpxx.h
make -j8
make install

NTL安装
- 下载
地址:https://libntl.org/download.html

- 编译&安装
./configure NTL_GMP_LIP=on
make
sudo make install

- 测试
#include <iostream>
#include <NTL/ZZ.h>
using namespace std;
using namespace NTL;
int main(){
ZZ a(1);
cout << a << endl;
}
//cmakelists.txt
cmake_minimum_required(VERSION 3.23)
project(untitled)
set(CMAKE_CXX_STANDARD 14)
include_directories(/usr/local/include)
link_directories(/usr/local/lib)
add_executable(untitled main.cpp)
target_link_libraries(untitled libntl.a libgmp.a)
参考
1、https://blog.csdn.net/qq_38798147/article/details/126700646
2、https://blog.csdn.net/zha_ojunchen/article/details/89818011
Mac安装NTL库的更多相关文章
- MAC上安装HEAAN库
介绍 HEAN是一个软件库,它实现支持定点运算的同态加密(HE),此库支持有理数之间的近似运算.近似误差取决于某些参数,与浮点运算误差几乎相同.该库中的方案发表在"近似数算术的同态加密&qu ...
- 【Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(二):安装facebook-wda库并编写简易自动化测试脚本
上一篇介绍完如何安装WDA,接下来开始正式安装开发库并编写自动化脚本. 目录: 一.安装facebook-wda库 二.通过WEditor定位元素 三.附录:学习资料 一.安装facebook-wda ...
- C++: Mac上安装Boost库并使用CLion开发
1.下载安装Boost库 官网下载最新版本1.65.0:http://www.boost.org/users/history/version_1_65_0.html 选择UNIX版本: 下载后解压cd ...
- mac安装ocr
mac安装Tesserocr 安装 Imagemagick 和 Tesseract 库: brew install imagemagick brew install tesseract --all-l ...
- mac 安装 nginx
我是用root用户装的 1.先安装PCRE库 可以在这里下载最新版,我这里使用的是8.33的版本然后在终端执行下面的命令. cd ~/Download tar xvzf pcre-8.33.tar.g ...
- mac安装brew, bower
Mac安装Brew 安装命令如下:curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/loc ...
- Mac安装Virtualenv & PyCharm使用Virtualenv
我们使用Python开发的时候,每个项目可能需要不同的Python版本,这时候我们就需要Virtualenv配置虚拟环境. Mac安装Virtualenv sudo pip install virtu ...
- 【Mac安装,ATX基于uiautomator2】之安装步骤
Mac系统下安装uiaotumator2: 参考网址:<uiautomator2>以及参考github官方文档 注意:下面有坑,如果你没有下面的问题请直接跳转到 1.安装uiaotumat ...
- Mac安装jupyter(原ipython)方法
用了Mac之后非常不习惯,很多东西都要查才能完成=-=之前Python用的sublime和ide,今天看教程安利了一个jupyter 记录下用Mac安装jupyter的过程: 1.像其他安装Mac自带 ...
- Windows及MAC 安装Python3.7.4
Windows没有Python环境,Mac自带Python 2,所以开发者需要下载Python 3进行开发相关工作,此文章介绍如何安装Python,Mac安装前可以在终端数输入python查看自带版本 ...
随机推荐
- Docker制作私有镜像仓库
构建私有仓库 启动Docker Registry,使用Docker官方提供的Registry镜像就可以搭建本地私有镜像仓库,具体指令如下. docker run -d -p 5000:5000 --r ...
- 5.jenkins的项目构建
Jenkins构建的项目类型介绍 Jenkins中自动构建项目的类型有很多,常用的有以下三种 自由风格软件项目(FreeStyle Project) Maven项目(Maven Project) 流水 ...
- C# Modbus 之 EasyModbus
直接上代码 public int EasyModbusReadInputRegisters() { ModbusClient modbusClient = new ModbusClient(_spHe ...
- cornerstone中raft_server_resp_handlers源码解析
1.概述 在rpc请求里,有了请求req就必然有回复resp.本文就来解析发送req的节点收到resp该怎么处理. 2.handle_peer_resp源码解析 void raft_server::h ...
- 九、FreeRTOS学习笔记-列表和列表项
列表和列表项的简介 列表是 FreeRTOS 中的一个数据结构,概念上和链表有点类似,列表被用来跟踪 FreeRTOS中的任务. 列表项就是存放在列表中的项目 列表相当于链表,列表项相当于节点,Fre ...
- PC自动化之pywinauto
官方文档: https://pywinauto.readthedocs.io/en/latest/contents.html [安装] pip install pywinauto [使用] from ...
- 在线文档-Wiki平台
GitBook 对于在线文档创作平台,当然还是首推GitBook GitBook为免费用户提供 10个空间(可以私有也可以公开) 支持自定义域名 gitbook本身是一个开源项目,你可以下载源代码自行 ...
- .NET 6,7,8 本地化的 IntelliSense 文件
官方的汉化教程 目前仅提供了.NET5 的本地化 IntelliSense 文件 https://mp.weixin.qq.com/s?__biz=MzI3ODc3NzIxMw==&mid=2 ...
- Windows安装redis并将redis设置成服务开机自启
Redis 作为一种缓存工具,主要用于解决高并发的问题,在分布式系统中有着极其广泛的应用,Redis 本身是应用于 Linux/Unix 平台的(部署在服务器上边),官方并没有提供 Windows 平 ...
- VLC 播放完毕后自动退出的问题
1.打开设置 2.打开全部显示 3.取消自动退出