关于用pkg.add安装包特别慢的问题

各位好,

我今天初次使用julia装包,但是速度非常缓慢,而且长时间等待后很多次都报错。所以像各位求助。


我已经用shadowsocks翻墙,换过多个国家的服务器均失败(但可以正常访问Google以及播放YouTube视频)。
我的系统是win10 1803,用的julia 0.6.4的发行版
我想要装的包有:Pkg.add(“Knet”),PkPkg.add(“FileIO”),Pkg.add(“FITSIO”),Pkg.add(“Images”),Pkg.add(“ImageMagick”)
请问是需要再额外配置什么东西或者有什么其它解决方案吗?
谢谢!

你会报错嘛?如果没报错可能只是第一次安装的时候速度比较慢。0.6的Pkg是比较旧的,会clone整个repo。

一个解决方案是从GitHub上手动下载包然后复制到 .julia 这个目录下面。再一个shadowsocks有可能只能给浏览器翻墙,命令行不能翻。

哦哦,谢谢回复。也就是说要不然就换个翻墙工具,要不然就换个julia的版本,要不然就手动下载?关于最后一个方案,我应该怎么找对应的包呢?直接去GitHub上面搜索么,有时候等待很长时间后会报错,报错有些是文件不匹配,有些是等待超时。

嗯,再等三天左右就有Julia 1.0了,新的Pkg可能会好一些(但是可能GitHub的CDN服务器也会被墙)。手动下载好以后,进入Julia

julia> push!(LOAD_PATH, "你下载下来的目录")

就可以了。

哦哦,能告诉我去哪里找包吗

不是就是GitHub么。可以直接搜索啊

如果可以,建议使用手机流量安装,通常会快一些。

1 个赞

需要给 git 设置 http 代理,具体方法可以百度。具体 git 的配置文件位置:‪C:\Users\用户名.gitconfig ,关键内容如下:

[https]
proxy = http://127.0.0.1:8118
[http]
proxy = http://127.0.0.1:8118

Julia 的 Pkg.add() 只能走 http 代理,不能走 sock5 代理,也就是说你必须将 shadowsocks 的 socks5 代理转成 http 代理,可以使用 privoxy 等软件。

环境:Win10,git 2.17,Julia 0.7-beta2.0

2 个赞

谢谢!我谷歌到一款软件可以实现相似的功能,包以及都装好了,但是现在有个问题是,我装FITSIO这个包的时候提示错误。


请问这个有什么解决方法吗?我试过卸载重装,还是报相同的错误。谢谢!

请确认这个库是哪个版本的,我看master上已经换了BB2, 应该不会从上面那个ftp下载才对

我看见.\julia\v0.6\FITSIO\NEWS.md中写的是v0.11.0 (2017-09-28)

可以Pkg.update()一下。能发一下Pkg.status()嘛?

好的,我试试看update。以下是.status的结果:
julia> Pkg.status(“FITSIO”)

  • FITSIO 0.11.0

我看官方最新的release就是0.11.0,一直没tag新的release, 你试试直接Pkg.checkout("FITSIO").

但是要注意,以后再运行Pkg.update()的时候会使这个库跟master同步,你最好给作者发个issue,让他帮你tag一个新release.

1 个赞

嗯嗯,试过了:
image
image

checkout之后记得 Pkg.build(“FITSIO”)

build的话还是一样的错误

能发一下截图么,错误是一模一样的?

噢,我是在update后build的,checkout之后果然没有报错了!感谢!:smile:

并且NEW.md中最新的变成了v0.12.0 (2018-??-??)