【发布时间】:2021-08-01 19:10:43
【问题描述】:
当我在我的 R 包(包括 C++ 代码)上运行 devtools::document() 时,我收到多个类型的错误
C:/Users/Lennart/Documents/R/win-library/4.0/RcppArmadillo/include/armadillo_bits/translate_lapack.hpp:1247:未定义对“ilaenv_”的引用
你知道如何解决这个问题吗?
【问题讨论】:
当我在我的 R 包(包括 C++ 代码)上运行 devtools::document() 时,我收到多个类型的错误
C:/Users/Lennart/Documents/R/win-library/4.0/RcppArmadillo/include/armadillo_bits/translate_lapack.hpp:1247:未定义对“ilaenv_”的引用
你知道如何解决这个问题吗?
【问题讨论】:
确保您已安装所有依赖项(LAPACK 是线性代数的外部库,也许您需要安装一些开发包集合)。这也可能意味着您在错误的(过时的?太新的?)版本中有一些依赖。
这究竟是什么环境?相关软件包的确切版本是什么?
【讨论】:
这是一个不完整的问题——我们没有代码可供参考,也不知道你是如何设置你的包的。
请注意,对于RcppArmadillo,您必须使用here 提供的sn-ps(并由RcppArmadillo.package.skeleton() 自动包含)以获得正确的文件src/Makevars 和src/Makevars.win有
PKG_CXXFLAGS = $(SHLIB_OPENMP_CXXFLAGS)
PKG_LIBS = $(SHLIB_OPENMP_CXXFLAGS) $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
这确保了 OpenMP 工作(如果 R 在架构上有它)和工作 LAPACK / BLAS。
【讨论】: