Running ITensors Julia on GLIBC_2.12

Hi all,

I’m trying to run ITensors on the institute cluster, however it only has GLIBC_2.12 installed. So I’m wondering if there are any versions of ITensors that supports GLIBC_2.12?

Thanks,

Jacky

What goes wrong when you try to install it?

Thanks for your response! The problem is the following.
Pkg.status("ITensors") returned:

Status `~/.julia/environments/v1.9/Project.toml`
⌃ [9136182c] ITensors v0.3.57
Info Packages marked with ⌃ have new versions available and may be upgradable.

However using ITensors returned the following error:

ERROR: LoadError: InitError: could not load library "/home/hluo9119/.julia/artifacts/cacaf4d3b5c79a7723468fc6b854afba34839634/lib/libmpi.so"
/lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/hluo9119/.julia/artifacts/cacaf4d3b5c79a7723468fc6b854afba34839634/lib/libmpi.so)
Stacktrace:
  [1] dlopen(s::String, flags::UInt32; throw_error::Bool)
    @ Base.Libc.Libdl ./libdl.jl:117
  [2] dlopen(s::String, flags::UInt32)
    @ Base.Libc.Libdl ./libdl.jl:116
  [3] macro expansion
    @ ~/.julia/packages/JLLWrappers/pG9bm/src/products/library_generators.jl:63 [inlined]
  [4] __init__()
    @ MPICH_jll ~/.julia/packages/MPICH_jll/0ol1A/src/wrappers/x86_64-linux-gnu-libgfortran5-mpi+mpich.jl:13
  [5] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String)
    @ Base ./loading.jl:1074
  [6] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any})
    @ Base ./loading.jl:1020
  [7] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128)
    @ Base ./loading.jl:1471
  [8] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1748
  [9] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
 [10] macro expansion
    @ ./loading.jl:1613 [inlined]
 [11] macro expansion
    @ ./lock.jl:267 [inlined]
 [12] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
 [13] include(mod::Module, _path::String)
    @ Base ./Base.jl:457
 [14] top-level scope
    @ ~/.julia/packages/JLLWrappers/pG9bm/src/toplevel_generators.jl:192
 [15] include
    @ ./Base.jl:457 [inlined]
 [16] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
    @ Base ./loading.jl:2010
 [17] top-level scope
    @ stdin:2
during initialization of module MPICH_jll
in expression starting at /home/hluo9119/.julia/packages/HDF5_jll/SEGoc/src/wrappers/x86_64-linux-gnu-libgfortran5-cxx11-mpi+mpich.jl:9
in expression starting at /home/hluo9119/.julia/packages/HDF5_jll/SEGoc/src/HDF5_jll.jl:2
in expression starting at stdin:2
ERROR: LoadError: Failed to precompile HDF5_jll [0234f1f7-429e-5d53-9886-15a909be8d59] to "/home/hluo9119/.julia/compiled/v1.9/HDF5_jll/jl_jNzJgz".
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:35
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
    @ Base ./loading.jl:2260
  [3] compilecache
    @ ./loading.jl:2127 [inlined]
  [4] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1770
  [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
  [6] macro expansion
    @ ./loading.jl:1613 [inlined]
  [7] macro expansion
    @ ./lock.jl:267 [inlined]
  [8] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
  [9] top-level scope
    @ ~/.julia/packages/HDF5/Ws1wH/src/api/api.jl:11
 [10] include(mod::Module, _path::String)
    @ Base ./Base.jl:457
 [11] include(x::String)
    @ HDF5 ~/.julia/packages/HDF5/Ws1wH/src/HDF5.jl:1
 [12] top-level scope
    @ ~/.julia/packages/HDF5/Ws1wH/src/HDF5.jl:68
 [13] include
    @ ./Base.jl:457 [inlined]
 [14] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
    @ Base ./loading.jl:2010
 [15] top-level scope
    @ stdin:2
in expression starting at /home/hluo9119/.julia/packages/HDF5/Ws1wH/src/api/api.jl:1
in expression starting at /home/hluo9119/.julia/packages/HDF5/Ws1wH/src/HDF5.jl:1
in expression starting at stdin:2
ERROR: LoadError: Failed to precompile HDF5 [f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f] to "/home/hluo9119/.julia/compiled/v1.9/HDF5/jl_5tCOHb".
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:35
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
    @ Base ./loading.jl:2260
  [3] compilecache
    @ ./loading.jl:2127 [inlined]
  [4] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1770
  [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
  [6] macro expansion
    @ ./loading.jl:1613 [inlined]
  [7] macro expansion
    @ ./lock.jl:267 [inlined]
  [8] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
  [9] include
    @ ./Base.jl:457 [inlined]
 [10] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
    @ Base ./loading.jl:2010
 [11] top-level scope
    @ stdin:2
in expression starting at /home/hluo9119/.julia/packages/ITensors/WMeVS/src/ITensors.jl:1
in expression starting at stdin:2
ERROR: LoadError: Failed to precompile ITensors [9136182c-28ba-11e9-034c-db9fb085ebd5] to "/home/hluo9119/.julia/compiled/v1.9/ITensors/jl_0jV67O".
Stacktrace:
 [1] error(s::String)
   @ Base ./error.jl:35
 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
   @ Base ./loading.jl:2260
 [3] compilecache
   @ ./loading.jl:2127 [inlined]
 [4] _require(pkg::Base.PkgId, env::String)
   @ Base ./loading.jl:1770
 [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
   @ Base ./loading.jl:1625
 [6] macro expansion
   @ ./loading.jl:1613 [inlined]
 [7] macro expansion
   @ ./lock.jl:267 [inlined]
 [8] require(into::Module, mod::Symbol)
   @ Base ./loading.jl:1576
in expression starting at /project/RDS-FSC-rotational_code-RW/mytest/rocode/test1.jl:1

I see, it seems like maybe it is an issue with HDF5.

What happens if you try to install HDF5.jl on its own, without installing ITensors.jl?

Ah there’s a problem when I try to install HDF5:

   Resolving package versions...
   Installed HDF5 ─ v0.17.2
    Updating `~/.julia/environments/v1.9/Project.toml`
  [f67ccb44] + HDF5 v0.17.2
    Updating `~/.julia/environments/v1.9/Manifest.toml`
  [f67ccb44] ↑ HDF5 v0.17.1 ⇒ v0.17.2
Precompiling project...
e[91m  ✗ e[39mHDF5
  0 dependencies successfully precompiled in 363 seconds. 130 already precompiled. 3 skipped during auto due to previous errors.
  e[91m1e[39m dependency errored. To see a full report either run `import Pkg; Pkg.precompile()` or load the package

and Pkg.precompile("HDF5") gives the GLIBC_2.14 not found error:

Precompiling HDF5
e[91m  ✗ e[39me[90mHDF5_jlle[39m
e[91m  ✗ e[39mHDF5
  0 dependencies successfully precompiled in 14 seconds. 14 already precompiled.

ERROR: LoadError: The following 1 direct dependency failed to precompile:

HDF5 [f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f]

Failed to precompile HDF5 [f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f] to "/home/hluo9119/.julia/compiled/v1.9/HDF5/jl_fPNlj4".
ERROR: LoadError: InitError: could not load library "/home/hluo9119/.julia/artifacts/cacaf4d3b5c79a7723468fc6b854afba34839634/lib/libmpi.so"
/lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/hluo9119/.julia/artifacts/cacaf4d3b5c79a7723468fc6b854afba34839634/lib/libmpi.so)
Stacktrace:
  [1] dlopen(s::String, flags::UInt32; throw_error::Bool)
    @ Base.Libc.Libdl ./libdl.jl:117
  [2] dlopen(s::String, flags::UInt32)
    @ Base.Libc.Libdl ./libdl.jl:116
  [3] macro expansion
    @ ~/.julia/packages/JLLWrappers/pG9bm/src/products/library_generators.jl:63 [inlined]
  [4] __init__()
    @ MPICH_jll ~/.julia/packages/MPICH_jll/0ol1A/src/wrappers/x86_64-linux-gnu-libgfortran5-mpi+mpich.jl:13
  [5] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String)
    @ Base ./loading.jl:1074
  [6] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any})
    @ Base ./loading.jl:1020
  [7] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128)
    @ Base ./loading.jl:1471
  [8] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1748
  [9] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
 [10] macro expansion
    @ ./loading.jl:1613 [inlined]
 [11] macro expansion
    @ ./lock.jl:267 [inlined]
 [12] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
 [13] include(mod::Module, _path::String)
    @ Base ./Base.jl:457
 [14] top-level scope
    @ ~/.julia/packages/JLLWrappers/pG9bm/src/toplevel_generators.jl:192
 [15] include
    @ ./Base.jl:457 [inlined]
 [16] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
    @ Base ./loading.jl:2010
 [17] top-level scope
    @ stdin:2
during initialization of module MPICH_jll
in expression starting at /home/hluo9119/.julia/packages/HDF5_jll/SEGoc/src/wrappers/x86_64-linux-gnu-libgfortran5-cxx11-mpi+mpich.jl:9
in expression starting at /home/hluo9119/.julia/packages/HDF5_jll/SEGoc/src/HDF5_jll.jl:2
in expression starting at stdin:2
ERROR: LoadError: Failed to precompile HDF5_jll [0234f1f7-429e-5d53-9886-15a909be8d59] to "/home/hluo9119/.julia/compiled/v1.9/HDF5_jll/jl_TjACZ1".
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:35
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
    @ Base ./loading.jl:2260
  [3] compilecache
    @ ./loading.jl:2127 [inlined]
  [4] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1770
  [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
  [6] macro expansion
    @ ./loading.jl:1613 [inlined]
  [7] macro expansion
    @ ./lock.jl:267 [inlined]
  [8] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
  [9] top-level scope
    @ ~/.julia/packages/HDF5/Z859u/src/api/api.jl:11
 [10] include(mod::Module, _path::String)
    @ Base ./Base.jl:457
 [11] include(x::String)
    @ HDF5 ~/.julia/packages/HDF5/Z859u/src/HDF5.jl:1
 [12] top-level scope
    @ ~/.julia/packages/HDF5/Z859u/src/HDF5.jl:68
 [13] include
    @ ./Base.jl:457 [inlined]
 [14] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::Nothing)
    @ Base ./loading.jl:2010
 [15] top-level scope
    @ stdin:2
in expression starting at /home/hluo9119/.julia/packages/HDF5/Z859u/src/api/api.jl:1
in expression starting at /home/hluo9119/.julia/packages/HDF5/Z859u/src/HDF5.jl:1
in expression starting at stdin:2
Stacktrace:
 [1] pkgerror(msg::String)
   @ Pkg.Types /usr/local/julia/1.9.0/share/julia/stdlib/v1.9/Pkg/src/Types.jl:69
 [2] precompile(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; internal_call::Bool, strict::Bool, warn_loaded::Bool, already_instantiated::Bool, timing::Bool, kwargs::Base.Pairs{Symbol, IOStream, Tuple{Symbol}, NamedTuple{(:io,), Tuple{IOStream}}})
   @ Pkg.API /usr/local/julia/1.9.0/share/julia/stdlib/v1.9/Pkg/src/API.jl:1568
 [3] precompile(pkgs::Vector{Pkg.Types.PackageSpec}; io::IOStream, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
   @ Pkg.API /usr/local/julia/1.9.0/share/julia/stdlib/v1.9/Pkg/src/API.jl:156
 [4] precompile(pkgs::Vector{Pkg.Types.PackageSpec})
   @ Pkg.API /usr/local/julia/1.9.0/share/julia/stdlib/v1.9/Pkg/src/API.jl:145
 [5] #precompile#115
   @ /usr/local/julia/1.9.0/share/julia/stdlib/v1.9/Pkg/src/API.jl:144 [inlined]
 [6] precompile
   @ /usr/local/julia/1.9.0/share/julia/stdlib/v1.9/Pkg/src/API.jl:144 [inlined]
 [7] #precompile#114
   @ /usr/local/julia/1.9.0/share/julia/stdlib/v1.9/Pkg/src/API.jl:143 [inlined]
 [8] precompile(pkg::String)
   @ Pkg.API /usr/local/julia/1.9.0/share/julia/stdlib/v1.9/Pkg/src/API.jl:143
 [9] top-level scope
   @ /project/RDS-FSC-rotational_code-RW/mytest/rocode/test1.jl:2
in expression starting at /project/RDS-FSC-rotational_code-RW/mytest/rocode/test1.jl:2

Thanks for checking. Could you raise an issue about this with the HDF5.jl package? I think they would have more insight than I can provide.

Since the error is reported during precompilation, does it actually cause problems when you try to run the code?

Perhaps we should make HDF5 an optional dependency of ITensors.jl if it causes installation issues (pinging @miles).

Ok thanks, I will post this to the HDF5 people.

I tried running using HDF5 on the cluster, and it took more than 20 minutes of wall time without returning anything.

It may be a bit annoying, but something you could do is go through the ITensors.jl source code and remove everything related to HDF5, including the dependency requirement in Project.toml. The rest of ITensor will work fine without it, it’s only provided for users who want to save and load with that file format.

That’s likely what we will do, and move that code to a package extension or add-on package.

Agreed.

I will give that a go. Thanks a lot!

@ARAM-TIME in [ITensors] HDF5 Package Extension by emstoudenmire · Pull Request #1382 · ITensor/ITensors.jl · GitHub we are making HDF5.jl an optional dependency, so it won’t be loading automatically when ITensors.jl is installed.

Sounds great, thank you!
Btw, how soon are we expecting v0.4.0 to be released?

Probably this week.

ITensors v0.4.0 has been released, please try it out and let us know if it fixes your installation issue.

Hi Matthew,

Looks like there’s still a problem. The error message I’m getting from using ITensors is almost the same as the original one, with an extra section on NDTensors. Please see below. Thanks a lot!

ERROR: LoadError: InitError: could not load library "/home/hluo9119/.julia/artifacts/cacaf4d3b5c79a7723468fc6b854afba34839634/lib/libmpi.so"
/lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/hluo9119/.julia/artifacts/cacaf4d3b5c79a7723468fc6b854afba34839634/lib/libmpi.so)
Stacktrace:
  [1] dlopen(s::String, flags::UInt32; throw_error::Bool)
    @ Base.Libc.Libdl ./libdl.jl:117
  [2] dlopen(s::String, flags::UInt32)
    @ Base.Libc.Libdl ./libdl.jl:116
  [3] macro expansion
    @ ~/.julia/packages/JLLWrappers/pG9bm/src/products/library_generators.jl:63 [inlined]
  [4] __init__()
    @ MPICH_jll ~/.julia/packages/MPICH_jll/0ol1A/src/wrappers/x86_64-linux-gnu-libgfortran5-mpi+mpich.jl:13
  [5] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String)
    @ Base ./loading.jl:1074
  [6] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any})
    @ Base ./loading.jl:1020
  [7] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128)
    @ Base ./loading.jl:1471
  [8] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1748
  [9] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
 [10] macro expansion
    @ ./loading.jl:1613 [inlined]
 [11] macro expansion
    @ ./lock.jl:267 [inlined]
 [12] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
 [13] include(mod::Module, _path::String)
    @ Base ./Base.jl:457
 [14] top-level scope
    @ ~/.julia/packages/JLLWrappers/pG9bm/src/toplevel_generators.jl:192
 [15] include
    @ ./Base.jl:457 [inlined]
 [16] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
    @ Base ./loading.jl:2010
 [17] top-level scope
    @ stdin:2
during initialization of module MPICH_jll
in expression starting at /home/hluo9119/.julia/packages/HDF5_jll/pjOXH/src/wrappers/x86_64-linux-gnu-libgfortran5-cxx11-mpi+mpich.jl:9
in expression starting at /home/hluo9119/.julia/packages/HDF5_jll/pjOXH/src/HDF5_jll.jl:2
in expression starting at stdin:2
ERROR: LoadError: Failed to precompile HDF5_jll [0234f1f7-429e-5d53-9886-15a909be8d59] to "/home/hluo9119/.julia/compiled/v1.9/HDF5_jll/jl_FLLhES".
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:35
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
    @ Base ./loading.jl:2260
  [3] compilecache
    @ ./loading.jl:2127 [inlined]
  [4] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1770
  [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
  [6] macro expansion
    @ ./loading.jl:1613 [inlined]
  [7] macro expansion
    @ ./lock.jl:267 [inlined]
  [8] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
  [9] top-level scope
    @ ~/.julia/packages/HDF5/Z859u/src/api/api.jl:11
 [10] include(mod::Module, _path::String)
    @ Base ./Base.jl:457
 [11] include(x::String)
    @ HDF5 ~/.julia/packages/HDF5/Z859u/src/HDF5.jl:1
 [12] top-level scope
    @ ~/.julia/packages/HDF5/Z859u/src/HDF5.jl:68
 [13] include
    @ ./Base.jl:457 [inlined]
 [14] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
    @ Base ./loading.jl:2010
 [15] top-level scope
    @ stdin:2
in expression starting at /home/hluo9119/.julia/packages/HDF5/Z859u/src/api/api.jl:1
in expression starting at /home/hluo9119/.julia/packages/HDF5/Z859u/src/HDF5.jl:1
in expression starting at stdin:2
ERROR: LoadError: Failed to precompile HDF5 [f67ccb44-e63f-5c2f-98bd-6dc0ccc4ba2f] to "/home/hluo9119/.julia/compiled/v1.9/HDF5/jl_voUyO9".
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:35
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
    @ Base ./loading.jl:2260
  [3] compilecache
    @ ./loading.jl:2127 [inlined]
  [4] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1770
  [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
  [6] macro expansion
    @ ./loading.jl:1613 [inlined]
  [7] macro expansion
    @ ./lock.jl:267 [inlined]
  [8] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
  [9] include(mod::Module, _path::String)
    @ Base ./Base.jl:457
 [10] include(x::String)
    @ NDTensors ~/.julia/packages/NDTensors/8ApHV/src/NDTensors.jl:1
 [11] top-level scope
    @ ~/.julia/packages/NDTensors/8ApHV/src/NDTensors.jl:5
 [12] include
    @ ./Base.jl:457 [inlined]
 [13] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
    @ Base ./loading.jl:2010
 [14] top-level scope
    @ stdin:2
in expression starting at /home/hluo9119/.julia/packages/NDTensors/8ApHV/src/imports.jl:18
in expression starting at /home/hluo9119/.julia/packages/NDTensors/8ApHV/src/NDTensors.jl:1
in expression starting at stdin:2
ERROR: LoadError: Failed to precompile NDTensors [23ae76d9-e61a-49c4-8f12-3f1a16adf9cf] to "/home/hluo9119/.julia/compiled/v1.9/NDTensors/jl_FtKADl".
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:35
  [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
    @ Base ./loading.jl:2260
  [3] compilecache
    @ ./loading.jl:2127 [inlined]
  [4] _require(pkg::Base.PkgId, env::String)
    @ Base ./loading.jl:1770
  [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
    @ Base ./loading.jl:1625
  [6] macro expansion
    @ ./loading.jl:1613 [inlined]
  [7] macro expansion
    @ ./lock.jl:267 [inlined]
  [8] require(into::Module, mod::Symbol)
    @ Base ./loading.jl:1576
  [9] include(mod::Module, _path::String)
    @ Base ./Base.jl:457
 [10] include(x::String)
    @ ITensors ~/.julia/packages/ITensors/tVfAa/src/ITensors.jl:51
 [11] top-level scope
    @ ~/.julia/packages/ITensors/tVfAa/src/ITensors.jl:56
 [12] include
    @ ./Base.jl:457 [inlined]
 [13] include_package_for_output(pkg::Base.PkgId, input::String, depot_path::Vector{String}, dl_load_path::Vector{String}, load_path::Vector{String}, concrete_deps::Vector{Pair{Base.PkgId, UInt128}}, source::String)
    @ Base ./loading.jl:2010
 [14] top-level scope
    @ stdin:2
in expression starting at /home/hluo9119/.julia/packages/ITensors/tVfAa/src/usings.jl:15
in expression starting at /home/hluo9119/.julia/packages/ITensors/tVfAa/src/ITensors.jl:1
in expression starting at stdin:2
ERROR: LoadError: Failed to precompile ITensors [9136182c-28ba-11e9-034c-db9fb085ebd5] to "/home/hluo9119/.julia/compiled/v1.9/ITensors/jl_OgBZsr".
Stacktrace:
 [1] error(s::String)
   @ Base ./error.jl:35
 [2] compilecache(pkg::Base.PkgId, path::String, internal_stderr::IO, internal_stdout::IO, keep_loaded_modules::Bool)
   @ Base ./loading.jl:2260
 [3] compilecache
   @ ./loading.jl:2127 [inlined]
 [4] _require(pkg::Base.PkgId, env::String)
   @ Base ./loading.jl:1770
 [5] _require_prelocked(uuidkey::Base.PkgId, env::String)
   @ Base ./loading.jl:1625
 [6] macro expansion
   @ ./loading.jl:1613 [inlined]
 [7] macro expansion
   @ ./lock.jl:267 [inlined]
 [8] require(into::Module, mod::Symbol)
   @ Base ./loading.jl:1576
in expression starting at /project/RDS-FSC-rotational_code-RW/mytest/rocode/test1.jl:1

Thanks for checking this. I see what’s going on, NDTensors is still dependent on HDF5, so when ITensors installs NDTensors, it in turn installs HDF5. We’ll have to do a similar change to NDTensors and move the HDF5 code into an NDTensorsHDF5Ext package extension to make it an optional dependency. @miles

1 Like

@ARAM-TIME this should be fixed by [NDTensors] HDF5 package extension by emstoudenmire · Pull Request #1390 · ITensor/ITensors.jl · GitHub, which is being registered in a new NDTensors v0.3.1 now (so should be ready to download in 15 minutes or so).

It works now! Thank you so much!

Glad to hear it, thanks for the update! It’s definitely nicer to not force users to install HDF5 if they don’t need it.

1 Like