Ubuntu 14.04 LTS 下使用源码编译安装 Sagemath 6.7 x64 (小结)
原先博客放弃使用,几篇文章搬运过来
- 下载源码包
- 系统的最低要求: 6GB 硬盘 ; 2GB RAM.
- 命令行工具:
- A C/C++ compiler: Since Sage builds its own GCC if needed, a wide variety of C/C++ compilers is supported.
Many GCC versions work, from as old as version 3.4.3 to the most recent release. Clang also works. On Solaris
systems, the Sun compiler should also work. See also Using alternative compilers. - make: GNU make, version 3.80 or later. Version 3.82 or later is recommended.
- m4: GNU m4 1.4.2 or later (non-GNU or older versions might also work).
- perl: version 5.8.0 or later.
- ar and ranlib: can be obtained as part of GNU binutils.
- tar: GNU tar version 1.17 or later, or BSD tar.
- A C/C++ compiler: Since Sage builds its own GCC if needed, a wide variety of C/C++ compilers is supported.
- 命令行工具安装
sudo apt-get install binutils gcc make m4 perl tar
- 系统特殊需求,Debian/Ubuntu需要安装dpkg-dev包
sudo apt-get install dpkg-dev
- 可选软件
- dvipng
- ffmpeg
- ImageMagick
- latex --十分建议安装
- 安装可选软件.
sudo apt-get install dvipng imagemagick texlive
- 安装ffmpeg
sudo add-apt-repository ppa:samrog131/ppa
sudo apt-get update
sudo apt-get install ffmpeg-real
sudo ln -sf /opt/ffmpeg/bin/ffmpeg /usr/bin/ffmpeg - 开始编译
cd ~/sage-6.7 #进入目录
export SAGE_FAT_BINATY=''yes''
MAKE='make -j4' make #不可以使用rootWarning::系统默认的GCC-4.9.2.p1在会出现问题后,Sage默认使用自带的GCC,由于版本问题导致R安装不上,出现如下ERROR
/home/user/build/sage/snapperkob/sage_git/build/local/var/tmp/sage/build/r-3.1.1.p0/src/bin/exec/R: /usr/lib/x86_64-linux-gnu/libgomp.so.1: version `GOMP_4.0' not found (required by /home/user/build/sage/snapperkob/sage_git/build/local/var/tmp/sage/build/r-3.1.1.p0/src/lib/libR.so)
make[7]: *** Error sysdate
make[6]: *** [all] Error 1
make[6]: Leaving directory `/home/user/build/sage/snapperkob/sage_git/build/local/var/tmp/sage/build/r-3.1.1.p0/src/src/library/tools'
make[5]: *** [R] Error 1
make[5]: Leaving directory `/home/user/build/sage/snapperkob/sage_git/build/local/var/tmp/sage/build/r-3.1.1.p0/src/src/library'
make[4]: *** [R] Error 1
make[4]: Leaving directory `/home/user/build/sage/snapperkob/sage_git/build/local/var/tmp/sage/build/r-3.1.1.p0/src/src'
make[3]: *** [R] Error 1
make[3]: Leaving directory `/home/user/build/sage/snapperkob/sage_git/build/local/var/tmp/sage/build/r-3.1.1.p0/src'
Error building R.设置第二步可以避免出现错误 SAGE_FAT_BINARY参数的作用:
to prepare a binary distribution that will run on the widest range of target machines.
./sage --bdisk x.y.z-fat #生成 .tar.gz 包文件
- 测试
./sage --testall
- 安装可选包
- sage -i <package name> 自动下载安装可选包,注意包名含有版本号
- Sage Optional Packages
- 命令行启动方式
- ln -s /path/to/sage-x.y.z/sage /usr/local/bin/sage
- 拷贝$SAGE_ROOT/sage至PATH(通常至/usr/local/bin).编辑拷贝中#SAGE_ROOT=/path/to/sage-version.
- 时间统计(Intel Core i5 3230m+8GB RAM +Ubuntu 14.04.02 amd64)
项目 make ./sage --testall 耗时 约2.5h 约1.2h
Ubuntu 14.04 LTS 下使用源码编译安装 Sagemath 6.7 x64 (小结)的更多相关文章
- ubuntu 18.04 64bit下如何源码编译安装anbox
1. 准备工作 1.1 安装gcc 7.x版本 sudo apt-get install gcc-7 -y 1.2 安装依赖的库及其工具 sudo apt install build-essentia ...
- Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程
Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程 在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...
- Linux Ubuntu 14.04 LTS下VirtualBox连接USB
1.环境 主机:Ubuntu 14.04 LTS 虚拟机:Windows 7 专业版本 VirtualBox: 图形用户界面版本 5.1.8 r111374 (Qt5.6.1) 2.在主机上给Virt ...
- Ubuntu 14.04.1 配置 Android 源码开发环境(jdk版本切换)(转载)
转自:http://www.cnblogs.com/ren-gh/p/4248407.html # Ubuntu 14.04.1 1.更新源: sudo apt-get update 安装vim工具: ...
- Ubuntu 14.04 LTS下安装Google Chrome浏览器
在Ubuntu 14.04下安装Google Chrome浏览器非常简单,只要到Chrome的网站下载Deb安装包并进行安装即可.当然你也可以使用APT软件包管理器来安装Google Chrome浏览 ...
- Ubuntu系统下OpenDaylight源码编译安装
操作系统:Linux x64 / Ubuntu 14.04 研究领域:软件定义网络SDN (Software-defined Networking) 开发组件:OpenDaylight 声明:转载请注 ...
- Ubuntu 14.04 LTS 下升级 gcc 到 gcc-4.9、gcc-5 版本
如果没记错的话,阿里云ECS上的Ubuntu也是LTS版本. 如果还在使用较旧版本的Ubuntu,或者是Ubuntu LTS,那么我们是很难体验新版gcc的.怎么办呢? 我们或许可以自己去编译用旧版本 ...
- ubuntu下mysql源码编译安装
建议:cpu4核以上,内存4G以上 1. 安装环境:Ubuntu Server 14.10MySQL-5.6.23.tar.gz 2. 安装必备的工具sudo apt-get install make ...
- 在Linux下用源码编译安装apache2
Linux下安装一个软件,最好去看下它的官方guide,apache2.4的安装安装guide 0. installation guide http://httpd.apache.org/docs/2 ...
随机推荐
- redis消息通知(任务队列/优先级队列/发布订阅模式)
1.任务队列 对于发送邮件或者是复杂计算这样的操作,常常需要比较长的时间,为了不影响web应用的正常使用,避免页面显示被阻塞,常常会将此类任务存入任务队列交由专门的进程去处理. 队列最基础的方法如下: ...
- java并发编程目录
java并发编程目录 Java多线程基础:进程和线程之由来 JAVA多线程实现的四种方式 Java并发编程:线程间协作的两种方式:wait.notify.notifyAll和Condition Jav ...
- 63(原67).纯 CSS 创作单元素点阵 loader
原文地址:https://segmentfault.com/a/1190000015444368 感想:CSS又一次让我见识到它的强大之处 --> box-shadow . box-shadow ...
- python变量、注释、程序交互、格式化输入、基本运算符
变量 ...
- html2canvas html截图插件
以下我总结了一些注意事项,在代码中注释了,仅供参考. html2canvas.js点击付:完整使用的demo ,如下: <!DOCTYPE html><html lang=" ...
- spring jdbc学习1
1.queryForObject - 其中的 RowMapper 指定如何去映射结果集的行, 常用的实现类为 BeanPropertyRowMapper - 使用 SQL 中列的别名完成列名和类的属性 ...
- 同步锁Lock(互斥锁)
同步锁作用: 在我当前包含(lock.acquire() 和 lock.release()之间 )的代码没有执行完成,不进行线程切换,必须等我执行完了,下一个线程才能继续执行(为什么要用同步锁,假如我 ...
- 创建Flask实例对象时的参数和app.run()中的参数
app=Flask(name,static_folder=“static”,static_url_path="/aaa",template_folder=“templates”) ...
- c# JSON格式转对象
using Newtonsoft.Json; List<string> ChapterIdList = JsonConvert.DeserializeObject<List<s ...
- jquery 中后代遍历之children、find区别
jquery 中children.find区别 首先看一段HTML代码,如下: <table id="tb"> <tr> <td>0</t ...