r-soffice仅在从RStudio调用时失败



我在Ubuntu 20.04的机器上使用RStudio版本1.3.1093。我的R版本是4.0.3。

当我从RStudio:中调用这行代码时,出现了一个意外的行为

system("soffice --headless --convert-to xlsx --outdir files/ files/EGP.xlsb")

它失败,并显示以下消息:

/usr/lib/libreoffice/program/javaldx: error while loading shared libraries: libreglo.so: cannot open shared object file: No such file or directory
Warning: failed to read path from javaldx
/usr/lib/libreoffice/program/soffice.bin: error while loading shared libraries: libreglo.so: cannot open shared object file: No such file or directory
Warning message:
In system("soffice --headless --convert-to xlsx --outdir files/ files/EGP.xlsb") :
error in running command

如果我调用";裸的";来自RStudio终端的命令(soffice --headless --convert-to xlsx --outdir files/ files/EGP.xlsb(:

user@machine:~/Right/Path/To/File$ soffice --headless --convert-to xlsx --outdir files/ files/EGP.xlsb
/usr/lib/libreoffice/program/javaldx: error while loading shared libraries: libreglo.so: cannot open shared object file: No such file or directory
Warning: failed to read path from javaldx
/usr/lib/libreoffice/program/soffice.bin: error while loading shared libraries: libreglo.so: cannot open shared object file: No such file or directory

但是,如果我从终端进行相同的调用,它不会出错,并产生预期的输出:

user@machine:~/Right/Path/To/File$ soffice --headless --convert-to xlsx --outdir files/ files/EGP.xlsb
convert /home/user/Right/Path/To/File/files/EGP.xlsb -> /home/user/Right/Path/To/File/files/EGP.xlsx using filter : Calc Office Open XML
Overwriting: /home/user/Right/Path/To/File/files/EGP.xlsx

我遵循了这个向Ubuntu提问的建议,意识到需要更新$LD_LIBRARY_PATH,但问题并没有解决。

RStudio是否错过了查找libreoffice库的路径,这些库在某种程度上对系统来说是清晰的(因为终端在查找它们时没有问题(?我该怎么修?谢谢

下面是Roah的评论:R 中系统函数的共享库问题

在R脚本中添加Sys.setenv位对我有效:

Sys.setenv(LD_LIBRARY_PATH = "/usr/lib/libreoffice/program/")
system('soffice --convert-to odt table.html')

相关内容

  • 没有找到相关文章

最新更新