3

当我尝试在 Julia 中使用 Requests 时,输出了以下错误:

julia> using Requests
INFO: Precompiling module Requests...
ERROR: LoadError: LoadError: error compiling version: could not load library "libz"
libz: cannot open shared object file: No such file or directory
while loading /home/michael/.julia/v0.4/Libz/src/lowlevel.jl, in expression starting on line 110
while loading /home/michael/.julia/v0.4/Libz/src/Libz.jl, in expression starting on line 11
ERROR: LoadError: Failed to precompile Libz to /home/michael/.julia/lib/v0.4/Libz.ji
while loading /home/michael/.julia/v0.4/Requests/src/Requests.jl, in expression starting on line 27
ERROR: Failed to precompile Requests to /home/michael/.julia/lib/v0.4/Requests.ji
in compilecache at ./loading.jl:400

我对 Julia 的了解不足,无法准确识别正在发生的事情,但这里是来自 Libz.jl 的代码(第 11 行)......

include("lowlevel.jl")

...来自 lowlevel.jl(第 103-110 行)...

# Functions
# ---------

function version()
    return unsafe_string(ccall((:zlibVersion, zlib), Ptr{UInt8}, ()))
end

const zlib_version = version()

...以及来自 Requests.jl(第 27 行)

using Libz

在我删除并重新安装 Libz、MbedTLS 和 Requests 之后,以及在我已经 Pkg.update()'ed 并重新启动 julia 和我的计算机之后,这个问题仍然存在。有没有人足够精通 Julia 知道如何解决这个问题?

4

1 回答 1

7

根据 Gnimuc K 的评论和更多的研究:

sudo apt-get install zlib1g-dev

安装 Julia 需要的 zlib。一旦安装...

julia> Pkg.update()
julia> Pkg.build("Libz")

解决了所有问题。

于 2016-09-09T04:44:48.343 回答