RCall.jl
RCall.jl copied to clipboard
GLIBC_2.32 not found?
In a cluster environment, I specified the following in ~/.julia/environments/v1.12/Project.toml
[RCall]
Rhome = "/apps/rocs/cedar/2020.08/cascadelake/software/R-base/r4.5.0-foss-2020a/bin/R"
libR = "/apps/rocs/cedar/2020.08/cascadelake/software/R-base/r4.5.0-foss-2020a/lib64/R/lib/libR.so"
Then I tried building RCall.jl, but I'm getting a weird GLIBC_2.32 not found error
(@v1.12) pkg> build RCall
Building Conda → `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/b19db3927f0db4151cb86d073689f2428e524576/build.log`
Building RCall → `~/.julia/scratchspaces/44cfe95a-1eb2-52ea-b672-e2afdf69b78f/7521292e0ca900751cf0f35f2a2faf1cb321e960/build.log`
ERROR: Error building `RCall`:
ERROR: could not load library "/apps/rocs/cedar/2020.08/cascadelake/software/R-base/r4.5.0-foss-2020a/lib64/R/lib/libR.so"
/lib64/libc.so.6: version `GLIBC_2.32' not found (required by /apps/rocs/cedar/2020.08/cascadelake/software/R-base/r4.5.0-foss-2020a/lib64/R/lib/libR.so)
ERROR: LoadError: Try adding /apps/rocs/cedar/2020.08/cascadelake/software/R-base/r4.5.0-foss-2020a/lib64/R/lib to the "LD_LIBRARY_PATH" environmental variable and restarting Julia.
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:44
[2] validate_libR(libR::String)
@ Main ~/.julia/packages/RCall/GLHIY/deps/setup.jl:26
[3] locate_libR(Rhome::SubString{String})
@ Main ~/.julia/packages/RCall/GLHIY/deps/setup.jl:43
[4] top-level scope
@ ~/.julia/packages/RCall/GLHIY/deps/build.jl:61
[5] include(mapexpr::Function, mod::Module, _path::String)
@ Base ./Base.jl:304
[6] top-level scope
@ none:5
[7] eval(m::Module, e::Any)
@ Core ./boot.jl:489
[8] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:287
[9] _start()
@ Base ./client.jl:554
in expression starting at /home/chub9/.julia/packages/RCall/GLHIY/deps/build.jl:11
caused by: could not load library "/apps/rocs/cedar/2020.08/cascadelake/software/R-base/r4.5.0-foss-2020a/lib64/R/lib/libR.so"
/lib64/libc.so.6: version `GLIBC_2.32' not found (required by /apps/rocs/cedar/2020.08/cascadelake/software/R-base/r4.5.0-foss-2020a/lib64/R/lib/libR.so)
Stacktrace:
[1] #dlopen#3
@ ./libdl.jl:120 [inlined]
[2] dlopen (repeats 2 times)
@ ./libdl.jl:119 [inlined]
[3] validate_libR(libR::String)
@ Main ~/.julia/packages/RCall/GLHIY/deps/setup.jl:16
[4] locate_libR(Rhome::SubString{String})
@ Main ~/.julia/packages/RCall/GLHIY/deps/setup.jl:43
[5] top-level scope
@ ~/.julia/packages/RCall/GLHIY/deps/build.jl:61
[6] include(mapexpr::Function, mod::Module, _path::String)
@ Base ./Base.jl:304
[7] top-level scope
@ none:5
[8] eval(m::Module, e::Any)
@ Core ./boot.jl:489
[9] exec_options(opts::Base.JLOptions)
@ Base ./client.jl:287
[10] _start()
@ Base ./client.jl:554
I tried to fix this with the help from chatGPT, but to no avail. Any suggestions?
Did you try:
Try adding /apps/rocs/cedar/2020.08/cascadelake/software/R-base/r4.5.0-foss-2020a/lib64/R/lib to the "LD_LIBRARY_PATH" environmental variable and restarting Julia.
Yes I did 🙂
And R otherwise runs fine on that cluster? Seems like an issue with libR.so not finding the right glibc.