解决 Solaris 上未声明的 -llapack 依赖性问题
Resolving unstated -llapack dependency issue on Solaris
我已经在 CRAN
上发布了一个 R
包,这取决于一些 RcppArmadillo
代码的成功编译。该包构建正确并且没有关于我尝试过的所有测试系统的注释(CRAN comments here if interested),但是,CRAN 检查在 solaris-sparc
上失败并且无法加载对 solaris-x86
的依赖项。
错误原因为 ld: fatal: library -llapack: not found
(来自 goldi-00install.html)。
在我的Makevars
和Makevars.win
中,我已经在PKG_LIBS
中声明了-llapack
,我认为这已经足够了。
PKG_LIBS= -Wsign-compare -llapack
两者都
但是,我不确定如何为 Solaris 声明这种依赖关系。是否有一个单独的 Makevars
我必须写,或者有一个不同的位置我必须声明依赖关系?
我已经阅读了"Writing R Extensions"手册的relevant section,怀疑我可能必须在PKG_LIBS
中声明$(LLAPACK_LIBS)
,但无法测试它在 solaris 平台上。这是正确的路径吗?
非常感谢您的帮助。
你在 src/Makevars 中的那一行是错误的。不要做你做过的事:
PKG_LIBS= -Wsign-compare -llapack
做我们都做的事,示例包有什么以及auto-generated package gets:
PKG_LIBS = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
当我们说它确实有效时,请相信我们。我敢打赌,在 CRAN 上的两百九十一个 (291 !!) 包中,基本上都使用这个。
而任何不这样做的人,就像您一样,只是做错了。上面 调度到 R 对 LAPACK 及其依赖项的了解 。使用它。
我已经在 CRAN
上发布了一个 R
包,这取决于一些 RcppArmadillo
代码的成功编译。该包构建正确并且没有关于我尝试过的所有测试系统的注释(CRAN comments here if interested),但是,CRAN 检查在 solaris-sparc
上失败并且无法加载对 solaris-x86
的依赖项。
错误原因为 ld: fatal: library -llapack: not found
(来自 goldi-00install.html)。
在我的Makevars
和Makevars.win
中,我已经在PKG_LIBS
中声明了-llapack
,我认为这已经足够了。
PKG_LIBS= -Wsign-compare -llapack
两者都
但是,我不确定如何为 Solaris 声明这种依赖关系。是否有一个单独的 Makevars
我必须写,或者有一个不同的位置我必须声明依赖关系?
我已经阅读了"Writing R Extensions"手册的relevant section,怀疑我可能必须在PKG_LIBS
中声明$(LLAPACK_LIBS)
,但无法测试它在 solaris 平台上。这是正确的路径吗?
非常感谢您的帮助。
你在 src/Makevars 中的那一行是错误的。不要做你做过的事:
PKG_LIBS= -Wsign-compare -llapack
做我们都做的事,示例包有什么以及auto-generated package gets:
PKG_LIBS = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
当我们说它确实有效时,请相信我们。我敢打赌,在 CRAN 上的两百九十一个 (291 !!) 包中,基本上都使用这个。
而任何不这样做的人,就像您一样,只是做错了。上面 调度到 R 对 LAPACK 及其依赖项的了解 。使用它。