cmake 编译rstudioserver源码遇到的小问题

发布于 2022-09-01 17:32:26 字数 966 浏览 25 评论 0

这是一个用源码安装rstudioserver时候遇到的问题:

现有环境已经安装好了 R 的基本环境

解压rstudioserver源码后,发现里面有个cmakelist.txt 看来是要用cmake

cmake ..

可是天有不测风云

报错了

CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:108 (message):
  Could NOT find LibR (missing: LIBR_LIBRARIES)
Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:315 (_FPHSA_FAILURE_MESSAGE)
  cmake/modules/FindLibR.cmake:176 (find_package_handle_standard_args)
  src/cpp/CMakeLists.txt:212 (find_package)

找到 FindLibR.cmake 文件 ,推测到问题源头

   # look for the core R library
   find_library(LIBR_CORE_LIBRARY NAMES R
                HINTS ${LIBR_LIB_DIR} ${LIBRARY_ARCH_HINT_PATH} ${LIBR_HOME}/bin)
   if(LIBR_CORE_LIBRARY)
      set(LIBR_LIBRARIES ${LIBR_CORE_LIBRARY})
   else()
      message(STATUS "Could not find libR shared library.")
   endif()

但是到此,无法继续了。。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

深白境迁sunset 2022-09-08 17:32:26

提示很明显了,就是找不到 R 的 lib 原因,
可能是你的 libR 没在搜索路径里,
或是你的R lib 不叫 libR 不叫 libR(可能是 libR + 版本号)

推荐的解决方式就是做一个符号链接就好了。一般默认/lib,/usr/lib,/usr/local/lib这几个都是搜索路径。所以可以
ln -s /usr/local/lib/libR.so /你的libR.so的路径/libR.so

自定义搜索库路径的方式
1、编译的时候加, -L /path 参数
2、添加环境变量, LIBRARY_PATH="/path"
3、配置文件,默认的搜索路径在 /etc/ld.so.conf,Ubuntu的话可能是 include 其他的配置文件 你可以具体去看include的配置。不过还是不太推荐改。

成熟稳重的好男人 2022-09-08 17:32:26

我也遇到了同样的问题,知道博主解决了没?

长亭外,古道边 2022-09-08 17:32:26

@zonxin

非常感谢您的帮忙!
请问您有已经OK的环境吗? 因为我看过这几个搜索路径下面没看到像是libr的东西,不知上哪里去找?找什么样子才是libr的包?

[root@localhost rstudio-rstudio-3f98ae3]# ls  /usr/local/lib/R/bin/
BATCH  COMPILE  f77_f2c     libtool        pager  Rd2pdf  REMOVE   rtags    Sweave
build  config   INSTALL     LINK           R      Rdconv  Rprof    SHLIB
check  exec     javareconf  mkinstalldirs  Rcmd   Rdiff   Rscript  Stangle
[root@localhost rstudio-rstudio-3f98ae3]# ls  /usr/local/lib/R/lib
libRblas.so  libRlapack.so
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文