无法预编译JLD

时间:2018-09-10 13:16:03

标签: julia

我有一个曾经使用过Julia 0.6的代码,最近我一直在尝试再次使用它,但是在使用JLD时遇到了很多麻烦。 我尝试使用最新的Julia版本,但仍然无法正常工作。 在0.6版本中,这是我所拥有的:

using JLD
  

INFO:预编译模块JLD。警告:无法导入   将Base.lastindex导入HDF5警告:无法将Base.iterate导入到   HDF5错误:LoadError:ArgumentError:在模块Libdl中找不到   当前路径。运行Pkg.add("Libdl")以安装Libdl软件包。

Pkg.add("Libdl")
  

错误:未知软件包Libdl

我不太了解发生了什么,我在Julia博客和stackoverflow上都看到了类似的问题,但是对于我来说似乎没有建议的解决方案。.我可以修改我的代码,因为它可以工作使用Julia的较新版本,但我仍然无法使JLD在任何版本中都能正常工作。

有什么建议吗? 谢谢!

1 个答案:

答案 0 :(得分:1)

对于Julia 1.0.0,请使用软件包JLD2.jl

]转到程序包管理器: add JLD2

示例代码:

using JLD2
obja = (a=5, b=[1,2,3]);
objb = "hello world";
save("dat.jld2","obja",obja,"objb",objb);

正在运行

load("dat.jld2")

收益

Dict{String,Any} with 2 entries:
  "obja" => (a = 5, b = [1, 2, 3])
  "objb" => "hello world"