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

Installation Fails #187

Closed
iliailmer opened this issue Nov 11, 2020 · 7 comments
Closed

Installation Fails #187

iliailmer opened this issue Nov 11, 2020 · 7 comments

Comments

@iliailmer
Copy link

Hi, I am running Julia 1.5.2 on a server with CentOS 7.8.2003 and I encounter the following error when calling

Pkg.add("Oscar")
ERROR: LoadError: LoadError: InitError: could not load library "/home/foo/.julia/artifacts/b801935f313061d64e28d8a28c39cdc24f139920/lib/libform.so"
/home/foo/.julia/artifacts/b801935f313061d64e28d8a28c39cdc24f139920/lib/libform.so: cannot open shared object file: No such file or directory
Stacktrace:
[1] dlopen(::String, ::UInt32; throw_error::Bool) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Libdl/src/Libdl.jl:109
[2] dlopen(::String, ::UInt32) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Libdl/src/Libdl.jl:109
[3] macro expansion at /home/foo/.julia/packages/JLLWrappers/KuIwt/src/products/library_generators.jl:61 [inlined]
[4] __init__() at /home/foo/.julia/packages/Ncurses_jll/L4aje/src/wrappers/x86_64-linux-gnu.jl:12
[5] _include_from_serialized(::String, ::Array{Any,1}) at ./loading.jl:697
[6] _require_from_serialized(::String) at ./loading.jl:749
[7] _require(::Base.PkgId) at ./loading.jl:1040
[8] require(::Base.PkgId) at ./loading.jl:928
[9] require(::Module, ::Symbol) at ./loading.jl:923
[10] include(::Function, ::Module, ::String) at ./Base.jl:380
[11] include(::Module, ::String) at ./Base.jl:368
[12] top-level scope at /home/foo/.julia/packages/JLLWrappers/KuIwt/src/toplevel_generators.jl:170
[13] include(::Function, ::Module, ::String) at ./Base.jl:380
[14] include(::Module, ::String) at ./Base.jl:368
[15] top-level scope at none:2
[16] eval at ./boot.jl:331 [inlined]
[17] eval(::Expr) at ./client.jl:467
[18] top-level scope at ./none:3
during initialization of module Ncurses_jll
in expression starting at /home/foo/.julia/packages/Readline_jll/uSXvl/src/wrappers/x86_64-linux-gnu.jl:4
in expression starting at /home/foo/.julia/packages/Readline_jll/uSXvl/src/Readline_jll.jl:8
ERROR: LoadError: LoadError: Failed to precompile Readline_jll [05236dd9-4125-5232-aa7c-9ec0c9b2c25a] to /home/iilmer/.julia/compiled/v1.5/Readline_jll/5XnCl_K8G9v.ji.
Stacktrace:
[1] error(::String) at ./error.jl:33
[2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1305
[3] _require(::Base.PkgId) at ./loading.jl:1030
[4] require(::Base.PkgId) at ./loading.jl:928
[5] require(::Module, ::Symbol) at ./loading.jl:923
[6] include(::Function, ::Module, ::String) at ./Base.jl:380
[7] include(::Module, ::String) at ./Base.jl:368
[8] top-level scope at /home/foo/.julia/packages/JLLWrappers/KuIwt/src/toplevel_generators.jl:170
[9] include(::Function, ::Module, ::String) at ./Base.jl:380
[10] include(::Module, ::String) at ./Base.jl:368
[11] top-level scope at none:2
[12] eval at ./boot.jl:331 [inlined]
[13] eval(::Expr) at ./client.jl:467
[14] top-level scope at ./none:3
in expression starting at /home/foo/.julia/packages/Perl_jll/3dFcW/src/wrappers/x86_64-linux-gnu.jl:4
in expression starting at /home/foo/.julia/packages/Perl_jll/3dFcW/src/Perl_jll.jl:8
ERROR: LoadError: Failed to precompile Perl_jll [83958c19-0796-5285-893e-a1267f8ec499] to /home/iilmer/.julia/compiled/v1.5/Perl_jll/fYLMz_K8G9v.ji.
Stacktrace:
[1] error(::String) at ./error.jl:33
[2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1305
[3] _require(::Base.PkgId) at ./loading.jl:1030
[4] require(::Base.PkgId) at ./loading.jl:928
[5] require(::Module, ::Symbol) at ./loading.jl:923
[6] include(::Function, ::Module, ::String) at ./Base.jl:380
[7] include(::Module, ::String) at ./Base.jl:368
[8] top-level scope at none:2
[9] eval at ./boot.jl:331 [inlined]
[10] eval(::Expr) at ./client.jl:467
[11] top-level scope at ./none:3
in expression starting at /home/foo/.julia/packages/Polymake/omVjG/src/Polymake.jl:36
ERROR: LoadError: Failed to precompile Polymake [d720cf60-89b5-51f5-aff5-213f193123e7] to /home/iilmer/.julia/compiled/v1.5/Polymake/QizyK_K8G9v.ji.
Stacktrace:
[1] error(::String) at ./error.jl:33
[2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1305
[3] _require(::Base.PkgId) at ./loading.jl:1030
[4] require(::Base.PkgId) at ./loading.jl:928
[5] require(::Module, ::Symbol) at ./loading.jl:923
[6] include(::Function, ::Module, ::String) at ./Base.jl:380
[7] include(::Module, ::String) at ./Base.jl:368
[8] top-level scope at none:2
[9] eval at ./boot.jl:331 [inlined]
[10] eval(::Expr) at ./client.jl:467
[11] top-level scope at ./none:3
in expression starting at /home/foo/.julia/packages/Oscar/YX0cd/src/Oscar.jl:33
ERROR: Failed to precompile Oscar [f1435218-dba5-11e9-1e4d-f1a5fab5fc13] to /home/iilmer/.julia/compiled/v1.5/Oscar/aJ3Pg_K8G9v.ji.
Stacktrace:
[1] error(::String) at ./error.jl:33
[2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1305
[3] _require(::Base.PkgId) at ./loading.jl:1030
[4] require(::Base.PkgId) at ./loading.jl:928
[5] require(::Module, ::Symbol) at ./loading.jl:923

Are there any additional requirements for this package? the top line of the error suggests a libform.so is missing but how do i install it?
Let me know if any additional info is needed about the setup.

@benlorenz
Copy link
Member

That library libform.so should have been installed automatically by julia (as a part of Ncurses_jll). Can you please check (and post) the contents of the folder .julia/artifacts/b801935f313061d64e28d8a28c39cdc24f139920/lib?

$ tree .julia/artifacts/b801935f313061d64e28d8a28c39cdc24f139920/lib
.julia/artifacts/b801935f313061d64e28d8a28c39cdc24f139920/lib
├── libform.so -> libformw.so
├── libformw.a
├── libformw.so -> libformw.so.6
├── libformw.so.6 -> libformw.so.6.1
├── libformw.so.6.1
├── libmenu.so -> libmenuw.so
├── libmenuw.a
├── libmenuw.so -> libmenuw.so.6
├── libmenuw.so.6 -> libmenuw.so.6.1
├── libmenuw.so.6.1
├── libncurses.so -> libncursesw.so
├── libncursesw.a
├── libncursesw.so -> libncursesw.so.6
├── libncursesw.so.6 -> libncursesw.so.6.1
├── libncursesw.so.6.1
├── libpanel.so -> libpanelw.so
├── libpanelw.a
├── libpanelw.so -> libpanelw.so.6
├── libpanelw.so.6 -> libpanelw.so.6.1
├── libpanelw.so.6.1
├── pkgconfig
│   ├── form.pc -> formw.pc
│   ├── formw.pc
│   ├── menu.pc -> menuw.pc
│   ├── menuw.pc
│   ├── ncurses.pc -> ncursesw.pc
│   ├── ncursesw.pc
│   ├── panel.pc -> panelw.pc
│   └── panelw.pc
└── terminfo -> ../share/terminfo

If the lib folder or some of the files are missing you can just remove the b801935f313061d64e28d8a28c39cdc24f139920 folder to allow julia to repopulate it.

To delete it you might need to run the following:

$ chmod -R u+w b801935f313061d64e28d8a28c39cdc24f13992
$ rm -rf b801935f313061d64e28d8a28c39cdc24f139920

Calling using Oscar should download Ncurses_jll again.

@iliailmer
Copy link
Author

The folder b801935f313061d64e28d8a28c39cdc24f13992 did not have lib in it, after deleting and running using Oscar again i get the following after downloading artifact Singular.

ERROR: LoadError: InitError: could not load library "/home/iilmer/.julia/artifacts/ca20f87f4740d86fb94ddf7d3a789bc13cd13d27/lib/libfactory.so"
/usr/bin/../lib64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /home/iilmer/.julia/artifacts/ca20f87f4740d86fb94ddf7d3a789bc13cd13d27/lib/libfactory.so)
Stacktrace:
 [1] dlopen(::String, ::UInt32) at /builddir/build/BUILD/julia/build/usr/share/julia/stdlib/v1.5/Libdl/src/Libdl.jl:109
 [2] macro expansion at /home/iilmer/.julia/packages/JLLWrappers/KuIwt/src/products/library_generators.jl:61 [inlined]
 [3] __init__() at /home/iilmer/.julia/packages/Singular_jll/7WdYF/src/wrappers/x86_64-linux-gnu-cxx03.jl:23
 [4] top-level scope at none:2
 [5] eval at ./boot.jl:331 [inlined]
during initialization of module Singular_jll
in expression starting at /home/iilmer/.julia/packages/Singular/cuKCT/src/Singular.jl:15
ERROR: LoadError: Failed to precompile Singular [bcd08a7b-43d2-5ff7-b6d4-c458787f915c] to /home/iilmer/.julia/compiled/v1.5/Singular/9fz0y_8hld2.ji.
Stacktrace:
 [1] top-level scope at none:2
 [2] eval at ./boot.jl:331 [inlined]
in expression starting at /home/iilmer/.julia/packages/Oscar/YX0cd/src/Oscar.jl:32
ERROR: Failed to precompile Oscar [f1435218-dba5-11e9-1e4d-f1a5fab5fc13] to /home/iilmer/.julia/compiled/v1.5/Oscar/aJ3Pg_8hld2.ji.
Stacktrace:
 [1] run_repl(::REPL.AbstractREPL, ::Any) at /builddir/build/BUILD/julia/build/usr/share/julia/stdlib/v1.5/REPL/src/REPL.jl:288

@benlorenz
Copy link
Member

That it is trying to load /usr/bin/../lib64/libstdc++.so.6 looks like a system-installation of julia built with a very old gcc version < 5 (CXXABI_1.3.9 corresponds to gcc 5). This is probably not compatible with all the cxxwrap based libraries which were compiled with gcc >= 7 (because they need C++17). Is this correct or can you provide more details about the julia installation?

Can you try the official julia binaries?

@iliailmer
Copy link
Author

Yes, i think that indeed might be the issue: the gcc on the server is gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC).

@iliailmer
Copy link
Author

By running scl enable devtoolset-7 bash I now get

gcc (GCC) 7.3.1 20180303 (Red Hat 7.3.1-5)

I still get an error, this time about a different library:

/home/iilmer/.julia/artifacts/fb7466b3165ef3deac1c49217c089680c699d016/lib/libpolymake.so: cannot open shared object file: No such file or directory
Stacktrace:
 [1] dlopen(::String, ::UInt32; throw_error::Bool) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Libdl/src/Libdl.jl:109
 [2] dlopen(::String, ::UInt32) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.5/Libdl/src/Libdl.jl:109
 [3] macro expansion at /home/iilmer/.julia/packages/JLLWrappers/KuIwt/src/products/library_generators.jl:61 [inlined]
 [4] __init__() at /home/iilmer/.julia/packages/polymake_jll/SpUzV/src/wrappers/x86_64-linux-gnu-cxx11.jl:22
 [5] _include_from_serialized(::String, ::Array{Any,1}) at ./loading.jl:697
 [6] _require_from_serialized(::String) at ./loading.jl:749
 [7] _require(::Base.PkgId) at ./loading.jl:1040
 [8] require(::Base.PkgId) at ./loading.jl:928
 [9] require(::Module, ::Symbol) at ./loading.jl:923
 [10] include(::Function, ::Module, ::String) at ./Base.jl:380
 [11] include(::Module, ::String) at ./Base.jl:368
 [12] top-level scope at /home/iilmer/.julia/packages/JLLWrappers/KuIwt/src/toplevel_generators.jl:170
 [13] include(::Function, ::Module, ::String) at ./Base.jl:380
 [14] include(::Module, ::String) at ./Base.jl:368
 [15] top-level scope at none:2
 [16] eval at ./boot.jl:331 [inlined]
 [17] eval(::Expr) at ./client.jl:467
 [18] top-level scope at ./none:3
during initialization of module polymake_jll
in expression starting at /home/iilmer/.julia/packages/libpolymake_julia_jll/yIdXT/src/wrappers/x86_64-linux-gnu-cxx11.jl:6
in expression starting at /home/iilmer/.julia/packages/libpolymake_julia_jll/yIdXT/src/libpolymake_julia_jll.jl:8
ERROR: LoadError: Failed to precompile libpolymake_julia_jll [4d8266f6-2b3b-57e3-ad7a-d431eaaac945] to /home/iilmer/.julia/compiled/v1.5/libpolymake_julia_jll/bUy2N_9KOTn.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1305
 [3] _require(::Base.PkgId) at ./loading.jl:1030
 [4] require(::Base.PkgId) at ./loading.jl:928
 [5] require(::Module, ::Symbol) at ./loading.jl:923
 [6] include(::Function, ::Module, ::String) at ./Base.jl:380
 [7] include(::Module, ::String) at ./Base.jl:368
 [8] top-level scope at none:2
 [9] eval at ./boot.jl:331 [inlined]
 [10] eval(::Expr) at ./client.jl:467
 [11] top-level scope at ./none:3
in expression starting at /home/iilmer/.julia/packages/Polymake/omVjG/src/Polymake.jl:38
ERROR: LoadError: Failed to precompile Polymake [d720cf60-89b5-51f5-aff5-213f193123e7] to /home/iilmer/.julia/compiled/v1.5/Polymake/QizyK_9KOTn.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1305
 [3] _require(::Base.PkgId) at ./loading.jl:1030
 [4] require(::Base.PkgId) at ./loading.jl:928
 [5] require(::Module, ::Symbol) at ./loading.jl:923
 [6] include(::Function, ::Module, ::String) at ./Base.jl:380
 [7] include(::Module, ::String) at ./Base.jl:368
 [8] top-level scope at none:2
 [9] eval at ./boot.jl:331 [inlined]
 [10] eval(::Expr) at ./client.jl:467
 [11] top-level scope at ./none:3
in expression starting at /home/iilmer/.julia/packages/Oscar/YX0cd/src/Oscar.jl:33
ERROR: Failed to precompile Oscar [f1435218-dba5-11e9-1e4d-f1a5fab5fc13] to /home/iilmer/.julia/compiled/v1.5/Oscar/aJ3Pg_9KOTn.ji.
Stacktrace:
 [1] error(::String) at ./error.jl:33
 [2] compilecache(::Base.PkgId, ::String) at ./loading.jl:1305
 [3] _require(::Base.PkgId) at ./loading.jl:1030
 [4] require(::Base.PkgId) at ./loading.jl:928
 [5] require(::Module, ::Symbol) at ./loading.jl:923```

@benlorenz
Copy link
Member

/home/iilmer/.julia/artifacts/fb7466b3165ef3deac1c49217c089680c699d016/lib/libpolymake.so: cannot open shared object file: No such file or directory

This seems like another case of missing files in the artifact, can you try to remove that folder fb7466b3165ef3deac1c49217c089680c699d016 and let julia download polymake_jll it again?

Have you previously used Oscar or Polymake and not used it for a while or triggered the Pkg.jl garbage collection (]gc) in between?
This might be related to an issue with Pkg.jl not being able to delete some artifacts because of missing permissions. But this is supposed to get better with julia 1.6.

@iliailmer
Copy link
Author

Hi, the issue has not been resolved on the server in question due to server-side problems. It is not related to the package build plus it runs on my other machines no problem, I will close the issue if that's okay.

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

2 participants