Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JLD2 not installing under latest 0.7-DEV #61

Closed
StephenVavasis opened this issue Feb 20, 2018 · 11 comments
Closed

JLD2 not installing under latest 0.7-DEV #61

StephenVavasis opened this issue Feb 20, 2018 · 11 comments

Comments

@StephenVavasis
Copy link

I'm trying to port my code from 0.6.2 to 0.7-DEV (0-day old master) and so far I haven't been able to install either JLD or JLD2 (Ubuntu 17.10). The installation of JLD2 is failing because the code is apparently not able to find libz. Below is the error message.

[ Info: Precompiling module JLD2
┌ Warning: Deprecated syntax `type` at /home/vavasis/.julia/v0.7/Libz/src/lowlevel.jl:62.
│ Use `mutable struct` instead.
└ @ nothing lowlevel.jl:62
┌ Warning: `is_windows` is deprecated, use `Sys.iswindows` instead.
│   caller = top-level scope
└ @ Core :0
WARNING: importing deprecated binding Base.Void into Libz.
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /home/vavasis/.julia/v0.7/Libz/src/lowlevel.jl:62
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /home/vavasis/.julia/v0.7/Libz/src/lowlevel.jl:62
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /home/vavasis/.julia/v0.7/Libz/src/lowlevel.jl:62
WARNING: Base.Void is deprecated, use Nothing instead.
  likely near /home/vavasis/.julia/v0.7/Libz/src/lowlevel.jl:62
ERROR: LoadError: LoadError: error compiling version: could not load library "libz"
libz.so: cannot open shared object file: No such file or directory
Stacktrace:
 [1] top-level scope
 [2] include at ./boot.jl:295 [inlined]
 [3] include_relative(::Module, ::String) at ./loading.jl:1060
 [4] include at ./sysimg.jl:27 [inlined]
 [5] include(::String) at /home/vavasis/.julia/v0.7/Libz/src/Libz.jl:3
 [6] top-level scope
 [7] include at ./boot.jl:295 [inlined]
 [8] include_relative(::Module, ::String) at ./loading.jl:1060
 [9] include(::Module, ::String) at ./sysimg.jl:27
 [10] top-level scope
 [11] eval at ./boot.jl:298 [inlined]
 [12] top-level scope at ./<missing>:3
in expression starting at /home/vavasis/.julia/v0.7/Libz/src/lowlevel.jl:110
in expression starting at /home/vavasis/.julia/v0.7/Libz/src/Libz.jl:11
ERROR: LoadError: Failed to precompile Libz to /home/vavasis/.julia/lib/v0.7/Libz.ji.
Stacktrace:
 [1] error at ./error.jl:33 [inlined]
 [2] compilecache(::Base.PkgId) at ./loading.jl:1198
 [3] _require(::Base.PkgId) at ./loading.jl:967
 [4] require(::Module, ::Symbol) at ./loading.jl:867
 [5] include at ./boot.jl:295 [inlined]
 [6] include_relative(::Module, ::String) at ./loading.jl:1060
 [7] include(::Module, ::String) at ./sysimg.jl:27
 [8] top-level scope
 [9] eval at ./boot.jl:298 [inlined]
 [10] top-level scope at ./<missing>:3
in expression starting at /home/vavasis/.julia/v0.7/JLD2/src/JLD2.jl:4
ERROR: LoadError: Failed to precompile JLD2 to /home/vavasis/.julia/lib/v0.7/JLD2.ji.
Stacktrace:
 [1] error at ./error.jl:33 [inlined]
 [2] compilecache(::Base.PkgId) at ./loading.jl:1198
 [3] _require(::Base.PkgId) at ./loading.jl:996
 [4] require(::Module, ::Symbol) at ./loading.jl:867
 [5] include at ./boot.jl:295 [inlined]
 [6] include_relative(::Module, ::String) at ./loading.jl:1060
 [7] include(::Module, ::String) at ./sysimg.jl:27
 [8] include(::String) at ./sysimg.jl:66
 [9] top-level scope
in expression starting at /home/vavasis/ownCloud/Documents/Katerina/cohesive/conic_jl/conic29.jl:8

julia> 
@ararslan
Copy link
Member

This appears to be an issue with Libz, not JLD2.

@StephenVavasis
Copy link
Author

OK, I opened an issue in libz.
BioJulia/Libz.jl#59

@bicycle1885
Copy link
Member

I will not actively maintain Libz.jl because I started developing CodecZlib.jl, which is an alternative of handling compressed data formats. Quickly skimming the code of JLD2.jl, I think it is not so heavy to switch to CodecZlib.jl.

@kafisatz
Copy link

In addition to the above, I currently get an error (dev.4690) that SimpleVector is not defined (in data.jl line 1027). What is the easiest way to fix this?

@ararslan
Copy link
Member

ararslan commented Mar 28, 2018

@bicycle1885 We shouldn't adopt CodecZlib here yet because it uses BinaryBuilder, which doesn't support all of the platforms that Julia supports. (See for example JuliaPackaging/BinaryBuilder.jl#32 and JuliaPackaging/BinaryBuilder.jl#126.) I'd prefer not to proliferate the exclusion of Julia-supported platforms in packages.

@ararslan
Copy link
Member

JuliaIO/CodecZlib.jl#15 will address the platform concerns.

@bicycle1885
Copy link
Member

CodecZlib.jl v0.4.3 includes the build support from source (JuliaLang/METADATA.jl#14023). So, I think you can switch the dependency whenever you're ready. Thanks again, @ararslan.

@ararslan
Copy link
Member

Great, thanks! I think we should go ahead with the switch then. @bicycle1885, if you're familiar with the primary differences between Zlib and CodecZlib, would you be able to submit a PR? I'd be happy to review it.

@bicycle1885
Copy link
Member

Sure 😃

@zahachtah
Copy link

zahachtah commented May 25, 2018

Didn't want to start new issue, under 0.7 nighlies I get error:

julia> using JLD2
[ Info: Precompiling module JLD2
ERROR: LoadError: ArgumentError: Module Pkg not found in current path.
Run `Pkg.add("Pkg")` to install the Pkg package.

installed using Pkg3

is this known or something I made a mistake with? need jld2 to ge my package running :-)

@ararslan
Copy link
Member

This was fixed by #67. Remaining 0.7 issues are logged separately.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants