NOTE1: 我的linux环境: CentOS 6.7
NOTE2: 注意安装yafu、msieve、gmp、gmp-ecm在同一目录下
NOTE3: 我的安装位置:/root/sherlly

STEP 1: 安装依赖环境(zlib/GMP/GMP-ECM/msieve)

zlib

rpm -qa|grep zlib
yum install -y zlib-devel-1.2.3-29.el6.x86_64 zlib-1.2.3-29.el6.x86_64

GMP

rpm -qa|grep gmp
  1. 如果版本>6.0:

    yum install -y gmp gmp-devel
    
  2. 如果版本<6.0或者没有找到:

    wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.bz2
    tar jxvf gmp-6.1.2.tar.bz2
    mv gmp-6.1.2 gmp
    cd gmp
    ./configure
    make
    make install
    

GMP-ECM

wget https://gforge.inria.fr/frs/download.php/file/4663/ecm-6.2.tar.gz
tar zxvf ecm-6.2.tar.gz
mv ecm-6.2 gmp-ecm
cd gmp-ecm
./configure
//如果提示error: GMP 5.0.0 or newer is required则ecm选择低一点的版本或者升级gmp
make
make install

msieve

wget http://downloads.sourceforge.net/project/msieve/msieve/Msieve%20v1.52/msieve152.tar.gz
tar zxvf msieve152.tar.gz
mv msieve-1.52 msieve
cd msieve
make all

STEP 2: 安装Yafu

  1. 下载源代码

    git clone https://github.com/DarkenCode/yafu.git
    cd yafu
    
  2. 修改MakeFile文件

    vim MakeFile
    在122行左右位置添加如下语句:
    LIBS+= -lc -lz在大概68行位置找到
    LIBS += -L../gmp/lib/linux/x86_64
    改为
    LIBS += -L../gmp/.libs在大概71行位置找到
    LIBS += -L../gmp-ecm/lib/linux/x86_64
    改为
    LIBS += -L../gmp-ecm/.libs在大概95行位置找到
    LIBS += -L../msieve/lib/linux/x86_64
    改为
    LIBS += -L../msieve
    
  3. 编译安装

    64位:make x86_64 NFS=1
    32位:make x86 NFS=1//添加环境变量(此处yafu安装位置为/root/sherlly/yafu,根据实际安装位置修改)
    echo "export PATH=/root/sherlly/yafu:\$PATH">>/etc/profile
    source /etc/profile//运行程序
    yafu
    

可能遇到的一些问题

  • error: gnu/stubs-32.h: No such file or directory

    yum install -y glibc-devel.i686 libstdc++-devel.i686

  • make: svnversion: Command not found
    yum install -y svn
    make all

  • error: mpz_aprcl.h: No such file or directory

    vim top/calc.c
    //#include "mpz_aprcl.h"#include "./aprcl/mpz_aprcl.h"vim factor/factor_common.c
    //#include "mpz_aprcl.h"#include "../top/aprcl/mpz_aprcl.h"vim arith/arith3.c
    //#include "mpz_aprcl.h"#include "../top/aprcl/mpz_aprcl.h"
  • error while loading shared libraries: libgmp.so.10: cannot open shared object file: No such file or directory

    find / -name libgmp.so.*
    ln -s /usr/lib64/libgmp.so.3 /usr/lib64/libgmp.so.10

Linux环境下安装yafu相关推荐

  1. Linux环境下安装nginx

    大家好,本篇文章主要讲的是Linux环境下安装nginx教程,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览 1.安装所需环境 //安装gcc yum install gcc-c ...

  2. 尚学python课程---11、linux环境下安装python注意

    尚学python课程---11.linux环境下安装python注意 一.总结 一句话总结: 准备安装依赖包:zlib.openssl:yum install zlib* openssl*:pytho ...

  3. Linux环境下安装Tigase XMPP Server

    Tigase是一种XMPP服务器,可以作为采用XMPP协议的各种IM(Instant Messeging)工具(如Pandion.Spark等)的服务器. 在Linux环境下安装Tigase的步骤如下 ...

  4. Linux环境下安装RocketMQ(MetaQ)

    一:RocketMQ简介 RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点: 1.能够保证严格的消息顺序 2.提供丰富的消息拉取模式 3.高效的订阅者水平扩展能力 4.实时的消息订阅机 ...

  5. linux环境下安装多个任意版本的python环境

    linux环境下安装多个任意版本的python环境 安装方法可以归结为 [下载 + 编译 + 配置环境变量] 下载Python Windows下载发送到linux上 step1. 下载linux版本的 ...

  6. Linux环境下安装Mysql5.7

    本文记录下我近期在Linux环境下安装Mysql5.7的实践经历. 服务器版本 Mysql版本 Centos 7.6 5.7.32 1. 下载Mysql 下载地址:https://downloads. ...

  7. Linux环境下安装单实例MySQL 5.7

    一.安装环境 1.操作系统版本:CentOS 7.5 2.MySQL版本:5.7.22(社区版) 3.MySQL安装包:mysql-5.7.22-linux-glibc2.12-x86_64.tar. ...

  8. Linux 环境下安装 GitLab 与配置

    什么是 GitLab? GitLab 是一个用于仓库管理系统的开源项目,使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务. GitLab的功能特点 提供了管理,计划,创建,验证,打 ...

  9. 服务器Linux环境下安装Matlab2018b

    服务器Linux环境下安装Matlab2018b 一.下载Linux版本Matlab2018b 二.上传Matlab2018b镜像 三.安装Matlab2018b 四.激活Matlab 一.下载Lin ...

  10. Windows重装系统+虚拟机virtuabox安装+ubuntu系统安装+linux环境下安装fsl 一条龙(步步亲测有效)

    Windows重装系统+虚拟机virtuabox安装+ubuntu系统安装+linux环境下安装fsl 一条龙 零:综述 一.windows10系统的安装 1.准备工作 2.制作启动盘 3.修改启动设 ...

最新文章

  1. Luogu P3177 [HAOI2015] 树上染色(树上背包)
  2. 倒计时3天!华为畅想未来智能车大赛报名即将截止,已报名选手请提交参赛PPT!
  3. Photoshop CC2018软件安装资料及教程
  4. 第三部分:Idea重构总结
  5. 【ABAP】带PDF附件的邮件发送功能
  6. 调优您的 LAMP 应用程序的 5 种简单方法
  7. 洛谷P3195 [HNOI2008]玩具装箱TOY
  8. 如图所示是一种轧钢计算机控制系统,高速线材厂轧钢工艺培训(活套)
  9. 战略性基础研究的由来及国际实践研究
  10. Git初学札记(六)————在远程新建本地Branch与在本地新建远程Branch
  11. MYSQL中时间毫秒数转换及日期格式化
  12. Android实现计算器布局(相对布局)
  13. 俄罗斯方块C4droid
  14. Java 移位运算详解
  15. cad有没有网页版_AutoCAD
  16. 所罗门王的宝藏(高斯消元)
  17. 冰冻三尺非一日之寒之产品观
  18. mate桌面暗色调超好看的配置
  19. CSS 权威指南 CSS实战手册 第四版(阅读笔记)
  20. 移动终端应用开发上机3组件通信与广播

热门文章

  1. 端口打流互通功能测试
  2. 数据优化 | CnOpenData中国工业企业绿色专利及引用被引用数据
  3. Linux版awvs破解详细步骤
  4. ios查看帧率的软件_iOS查看屏幕帧数工具--YYFPSLabel
  5. 校园卡管理系统c语言代码,基于C++的校园一卡通管理系统
  6. 在AD09中怎样同时高亮两个网络(即net)?按住Ctrl,鼠标点一个网络,按住Ctrl+Shift,鼠标再点另一个网络,想亮多少亮多少。
  7. office 公式编辑器 插入花体格式字母
  8. 常用传感器讲解四--水位传感器(water sensor)
  9. 程序员代码面试指南(左程云著)java学习笔记
  10. 有什么PDF转HTML转换器?建议收藏这些转换器