Open AmelZulji opened 5 months ago
Can anybody please let me know if this is something that can be adressed?
Thank you for the reply @eitsupi.
I have a renv library /project/renv/library/R-4.2/x86_64-pc-linux-gnu
. within that library languageserver and jsonlite are installed and that library is included within r.libPaths
.
The problem that I have is that when I launch R from VSCode I cannot load any of the libraries which is within /project/renv/library/R-4.2/x86_64-pc-linux-gnu
. I get the error mentioned above.
If i start the R terminal outside the VSCode I can normally load those libraries.
The problem in my opinion is how R is started within VSCode and outside.
Outside of VSCode:
> Sys.getenv("PATH")
[1] "/opt/bwhpc/common/compiler/gnu/12.1.0/bin:/opt/bwhpc/common/math/R/4.2.1-mkl-2022.2-gnu-12.1-cairo/bin:/home/hd/hd_hd/hd_ut239/.local/bin:/home/hd/hd_hd/hd_ut239/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/hd/hd_hd/hd_ut239/bin/cmake-3.25.2-linux-x86_64/bin"
Within VSCode:
> Sys.getenv("PATH")
[1] "/gpfs/bwfor/home/hd/hd_hd/hd_ut239/.vscode-server/cli/servers/Stable-e170252f762678dec6ca2cc69aba1570769a5d39/server/bin/remote-cli:/home/hd/hd_hd/hd_ut239/.local/bin:/home/hd/hd_hd/hd_ut239/bin:/usr/local/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/hd/hd_hd/hd_ut239/bin/cmake-3.25.2-linux-x86_64/bin/:/home/hd/hd_hd/hd_ut239/bin/cmake-3.25.2-linux-x86_64/bin/"
I am using VSCode to connect remotly to HPC. Within HPC, R is available as module, when i module load R
it loads R but in addition it also load compiler/gnu/12.1
and numlib/mkl/2022.2
. I have an impression that those additional modules are causing problem in VScode.
Any help would be greatly appreciated. Regards, Amel
@renkun-ken would you mind having a look into this?
I have no idea what the "correct" solution is here but the following workaround seems to work for me:
./bin/loadR.sh
module load R
export LD_LIBRARY_PATH=<what ever you need>
R $@
chmod 755 ./bin/loadR.sh
./.vscode/settings.json
) to launch R using this script
{
"r.rterm.linux": "${workspaceFolder}/bin/loadR.sh"
}
When you then attach R via the command pallete this should have the correct environment set up.
Describe the bug Attaching R doesn't properly sets
LD_LIBRARY_PATH
(it leads to errors when loading libraries). When I lunch R from system (the same one which I specify inr.path
andr.term
) has additional libraries on path as compared to attached R. I tried to update theLD_LIBRARY_PATH
in.vscode-server/extensions/reditorsupport.r-2.8.2/R/session/init.R
. when I attach R afterwardsSys.getenv("LD_LIBRARY_PATH")
give updatedLD_LIBRARY_PATH
, however it seems like the libraries are still not accessible and the same error persist:loading libraries in manualy launched R works with no errors.
To Reproduce
Can you fix this issue by yourself? (We appreciate the help) No
Environment (please complete the following information):
Thank you and kind regards, Amel