Just putting this here in event anyone else has similar issues with a linux Julia install from source on an Arch Linux kernel (this may not be an issue if installing from binaries atm). This requires root access, so may not work for those on university clusters, etc. (if you search, there are some ways to use your home directory to resolve this as well).
Distro: Manjaro Linux 18.1.2
Kernel: 5.3.8-3-MANJARO
Julia: v1.2, installed using ‘pacman’
This would have occurred with Distributions and others depending on Arpack, not just StatsPlots, just where it manifested first in my case:
julia> using StatsPlots
[ Info: Precompiling StatsPlots [f3b207a7-027a-5e70-b257-86293d7955fd]
ERROR: LoadError: No deps.jl file could be found. Please try running Pkg.build("Arpack").
Currently, the build command might fail when Julia has been built from source
and the recommendation is to use the official binaries from julialang.org.
For more info see https://github.com/JuliaLinearAlgebra/Arpack.jl/issues/5.
Resolved by creating a symlink:
$ sudo ln -s /usr/lib/libopenblas.so /usr/lib/libopenblas64_.so.0
More details to understand if this might apply to your situation and offer resolution:
First, had installed using pacman, not from Julia source binaries:
[e@xps15 ~]$ sudo pacman -Sy julia
[sudo] password for e:
:: Synchronizing package databases...
core is up to date
extra is up to date
community is up to date
multilib is up to date
resolving dependencies...
looking for conflicting packages...
:: openblas and blas are in conflict. Remove blas? [y/N] y
Packages (6) blas-3.8.0-2 [removal] cblas-3.8.0-2 http-parser-2.9.2-1 libgit2-1:0.28.3-1 openblas-0.3.7-1 julia-2:1.2.0-1.2
Total Download Size: 31.87 MiB
Total Installed Size: 203.86 MiB
Net Upgrade Size: 203.53 MiB
:: Proceed with installation? [Y/n] Y
:: Retrieving packages...
cblas-3.8.0-2-x86_64 30.1 KiB 9.78M/s 00:00
...
(5/5) installing julia [################################################################] 100%
Optional dependencies for julia
gnuplot: If using the Gaston Package from julia
:: Running post-transaction hooks...
(1/3) Updating icon theme caches...
(2/3) Arming ConditionNeedsUpdate...
(3/3) Updating the desktop file MIME type cache...
[e@xps15 ~]$ julia
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.2.0 (2019-08-20)
_/ |\__'_|_|_|\__'_| |
|__/ |
julia>
All seemed fine, and was using Julia v1.2 for several days with other packages that didn’t require Arpack, so didn’t notice the issue at first.
Arpack seemed to work fine with adding the package, but failed here:
(v1.2) pkg> build Arpack
Building Arpack → `~/.julia/packages/Arpack/cu5By/deps/build.log`
┌ Error: Error building `Arpack`:
│ ERROR: LoadError: LibraryProduct(nothing, ["libarpack"], :libarpack, "Prefix(/home/e/.julia/packages/Arpack/cu5By/deps/usr)") is not satisfied, cannot generate deps.jl!
...
Couldn’t remove it using rm
as apparently it wasn’t actually added:
(v1.2) pkg> rm Arpack
ERROR: The following package names could not be resolved:
* Arpack (7d9fca2a-8960-54d3-9f78-7d1dccf2cb97 in manifest but not in project)
Please specify by known `name=uuid`.
(v1.2) pkg> rm 7d9fca2a-8960-54d3-9f78-7d1dccf2cb97
┌ Warning: `7d9fca2a-8960-54d3-9f78-7d1dccf2cb97` not in project, ignoring
└ @ Pkg.Operations /build/julia/src/julia-1.2.0/usr/share/julia/stdlib/v1.2/Pkg/src/Operations.jl:873
[ Info: No changes
Tried to update and then build, no dice:
(v1.2) pkg> up Arpack
Updating registry at `~/.julia/registries/General`
Updating git-repo `https://github.com/JuliaRegistries/General.git`
Resolving package versions...
Installed AbstractFFTs ─ v0.5.0
Updating `~/.julia/environments/v1.2/Project.toml`
[no changes]
Updating `~/.julia/environments/v1.2/Manifest.toml`
[621f4979] ↑ AbstractFFTs v0.4.1 ⇒ v0.5.0
(v1.2) pkg> build Arpack
Building Arpack → `~/.julia/packages/Arpack/cu5By/deps/build.log`
┌ Error: Error building `Arpack`:
...
also tried to update all packages, and also to install from master and build Arpack, no change (wasn’t addressing root issue):
(v1.2) pkg> up
(v1.2) pkg> add Arpack#master
So in linux shell, reinstalled Arpack from Arch repository to be safe (it was up to date, no change in building Arpack within Julia):
~/.../cu5By/deps >>> gcc --version
gcc (GCC) 9.2.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
~/.../cu5By/deps >>> sudo pacman -S arpack
warning: arpack-3.7.0-2 is up to date -- reinstalling
And finally, the resolution via a symlink:
$ sudo ln -s /usr/lib/libopenblas.so /usr/lib/libopenblas64_.so.0
I write this because other recommendations were to reinstall, ‘dev’ packages, and all sorts of other methods that would have probably made things worse. There is much discussion on this Arpack issue, and it took couple hours to read enough to understand what was going on. Hoping if you had this issue you found this note and it resolved for you quickly!
These two posts helped and offer great detail if interested:
The location where the command used to resolve was found (comment-437869878):
https://github.com/JuliaLinearAlgebra/Arpack.jl/issues/5#issuecomment-437869878
and comment-416065166
https://github.com/JuliaLinearAlgebra/Arpack.jl/issues/5#issuecomment-416065166