1.引言
julia最近十分受关注,其结合了python的通用性,R的包管理和数据分析功能,perl的正则能力,matlab的矩阵计算规则,fortran的矩阵计算速度。可谓是集众家之所长,当下就试了一把,不过还是觉得pip的包管理十分方便,暂时不是很习惯R的包管理方式。
julia将所有的包依赖github进行管理,而不是如pypi一样建立个独立的网站,其中包含了所有注册的包(你写的包被官方收录)的元数据General,以及几乎所有2261个包都是在github上。当然这给生产环境等无法联网的机器带来了不小的麻烦。这里经过试验和查找stackoverflow等方式,算是找到了几个解决方法。下面主要在centos上进心实现。
2. 在线安装
using Pkg
Pkg.add("Example")
是不是很方便,而且自动解决依赖,而且一行就能更新所有的包版本
3. 离线安装
3.1 如果机器能代理上网
如果你的机器是需要通过代理上网的,那么会需要设定http_proxy,https_proxy等,然而当爆出
可以尝试
export https_proxy=http://192.168.71.33:8080
即给https附加http的代理。然后采用之前的在线安装方式直接安装,美滋滋。
3.2 机器都不能联网
如果也不能联网,那么首先找到所需要的包,如General:
1 - 先找一台能上网的机器
git clone https://github.com/JuliaRegistries/General.git
ps:不要直接github上打包的方式下下来,因为这样里面缺少了.git等元数据信息
2 - 将包放入指定位置
如在Pkg模式(按下 ] 这个按键,表示进入Pkg模式,退出可以直接ctrl+c)下直接输入
add General
可以看出,julia的默认路径是~/.julia。当安装完成时,会有如下的目录结构
如果当前为空,则先建立registries,然后将之前github上下载的General包放在~/.julia/registries下面
然后:
成功!