SciML / LinearSolve.jl

LinearSolve.jl: High-Performance Unified Interface for Linear Solvers in Julia. Easily switch between factorization and Krylov methods, add preconditioners, and all in one interface.
https://docs.sciml.ai/LinearSolve/stable/
Other
241 stars 52 forks source link

LinearSolve Load Error #446

Open riskpressure opened 8 months ago

riskpressure commented 8 months ago

When I attempt to add LinearSolve, or any of the packages from SciML, I get a load error. I first removed an older version of Julia from my computer, then downloaded the newest version, and attempted to add LinearSolve again, and got a similar load error.

LinearSolve [7ed4a6bd-45f5-4d41-b270-4a48e9bafcae]

Failed to precompile LinearSolve [7ed4a6bd-45f5-4d41-b270-4a48e9bafcae] to "C:\Users\arthu\.julia\compiled\v1.9\LinearSolve\jl_4C2D.tmp". ERROR: LoadError: InitError: could not load library "C:\Users\arthu.julia\artifacts\627190b3418f9b1cfbbf9b16afba530328670386\bin\mkl_core.2.dll" The specified module could not be found. 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 @ C:\Users\arthu.julia\packages\JLLWrappers\pG9bm\src\products\library_generators.jl:63 [inlined] [4] init() @ MKL_jll C:\Users\arthu.julia\packages\MKL_jll\GxRJ5\src\wrappers\x86_64-w64-mingw32.jl:10 [5] register_restored_modules(sv::Core.SimpleVector, pkg::Base.PkgId, path::String) @ Base .\loading.jl:1115 [6] _include_from_serialized(pkg::Base.PkgId, path::String, ocachepath::String, depmods::Vector{Any}) @ Base .\loading.jl:1061 [7] _require_search_from_serialized(pkg::Base.PkgId, sourcepath::String, build_id::UInt128) @ Base .\loading.jl:1506 [8] _require(pkg::Base.PkgId, env::String) @ Base .\loading.jl:1783 [9] _require_prelocked(uuidkey::Base.PkgId, env::String) @ Base .\loading.jl:1660 [10] macro expansion @ .\loading.jl:1648 [inlined] [11] macro expansion @ .\lock.jl:267 [inlined] [12] require(into::Module, mod::Symbol) @ Base .\loading.jl:1611 [13] top-level scope @ C:\Users\arthu.julia\packages\Preferences\TTEAN\src\Preferences.jl:47 [14] include @ .\Base.jl:457 [inlined] [15] 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:2049 [16] top-level scope @ stdin:3 during initialization of module MKL_jll in expression starting at C:\Users\arthu.julia\packages\LinearSolve\1B5tc\src\LinearSolve.jl:1 in expression starting at stdin:3 Stacktrace: [1] pkgerror(msg::String) @ Pkg.Types C:\Users\arthu\AppData\Local\Programs\Julia-1.9.4\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, Base.TTY, Tuple{Symbol}, NamedTuple{(:io,), Tuple{Base.TTY}}}) @ Pkg.API C:\Users\arthu\AppData\Local\Programs\Julia-1.9.4\share\julia\stdlib\v1.9\Pkg\src\API.jl:1619 [3] precompile(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.TTY, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API C:\Users\arthu\AppData\Local\Programs\Julia-1.9.4\share\julia\stdlib\v1.9\Pkg\src\API.jl:156 [4] precompile(pkgs::Vector{Pkg.Types.PackageSpec}) @ Pkg.API C:\Users\arthu\AppData\Local\Programs\Julia-1.9.4\share\julia\stdlib\v1.9\Pkg\src\API.jl:145 [5] precompile(; name::Nothing, uuid::Nothing, version::Nothing, url::Nothing, rev::Nothing, path::Nothing, mode::Pkg.Types.PackageMode, subdir::Nothing, kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Pkg.API C:\Users\arthu\AppData\Local\Programs\Julia-1.9.4\share\julia\stdlib\v1.9\Pkg\src\API.jl:171 [6] precompile() @ Pkg.API C:\Users\arthu\AppData\Local\Programs\Julia-1.9.4\share\julia\stdlib\v1.9\Pkg\src\API.jl:162 [7] top-level scope @ REPL[6]:1

ChrisRackauckas commented 8 months ago

Is this with a standard installation of Julia downloaded from https://julialang.org/? Can you share versioninfo()?

riskpressure commented 8 months ago

Julia Version 1.9.4 Commit 8e5136fa29 (2023-11-14 08:46 UTC) Build Info: Official https://julialang.org/ release Platform Info: OS: Windows (x86_64-w64-mingw32) CPU: 8 × 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz WORD_SIZE: 64 LIBM: libopenlibm LLVM: libLLVM-14.0.6 (ORCJIT, tigerlake) Threads: 1 on 8 virtual cores Environment: JULIA_IMAGE_THREADS = 1

ChrisRackauckas commented 8 months ago

Did you try just wiping .julia and seeing if a new download fixed it?

riskpressure commented 8 months ago

I ended up installing Intel oneAPI toolkit, which had the required module: "mkl_core.2.dll". This also required me to download Microsoft Visual Studio Build Tools which had some essential libraries for the Intel oneAPI Toolkit. Thank you. So the problem is solved for now.

ChrisRackauckas commented 8 months ago

That all shouldn't be required if you didn't build from source.