【问题标题】:Resolving unstated -llapack dependency issue on Solaris解决 Solaris 上未说明的 -llapack 依赖问题
【发布时间】:2016-11-23 13:01:46
【问题描述】:

我在CRAN 上发布了一个R 包,它依赖于一些RcppArmadillo 代码的成功编译。该包正确构建并且在我尝试过的所有测试系统 (CRAN comments here if interested) 上没有任何注释,但是,CRAN 检查在solaris-sparc 上失败并且无法加载对solaris-x86 的依赖项。

See here for CRAN checks

错误原因为ld: fatal: library -llapack: not found(来自goldi-00install.html)。

在我的MakevarsMakevars.win 中,我在PKG_LIBS 中声明了-llapack,我认为这已经足够了。

PKG_LIBS= -Wsign-compare -llapack 在两者中。

但是,我不确定如何为 Solaris 声明此依赖项。我必须写一个单独的Makevars,还是必须在不同的位置声明依赖关系?

我已经阅读了“Writing R Extensions”手册中的relevant section,并怀疑我可能不得不在PKG_LIBS 中声明$(LLAPACK_LIBS),但无法在solaris 平台上对其进行测试。这是正确的道路吗?

感谢您的帮助,非常感谢。


Package on Github

Package on CRAN

【问题讨论】:

    标签: r solaris rcpp cran


    【解决方案1】:

    您在src/Makevars 中的行是错误的。不要做你做过的事:

    PKG_LIBS= -Wsign-compare -llapack
    

    做我们都做的,示例包有什么auto-generated package gets

    PKG_LIBS = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
    

    当我们说它有效时,请相信我们。我敢说,在 CRAN 上的 291 个 (291 !!) 包中,基本上都使用这个。

    而没有像你这样的人,只是做错了。以上派发到 R 对 LAPACK 及其依赖项的了解。使用它。

    【讨论】:

    • 谢谢 Dirk,我希望我能亲自找到你。这是我第一次进入Rcpp,我很高兴能直截了当。我会更改它并重新提交给 CRAN。一切顺利。
    • 太棒了,恭喜你一开始就把它送到了 CRAN。
    • 谢谢,我很兴奋。我的一群朋友在发布后大约五分钟得到了索引页面的截图。再次感谢,希望您今天过得愉快。
    猜你喜欢
    • 2015-12-13
    • 1970-01-01
    • 1970-01-01
    • 2019-06-07
    • 2023-02-21
    • 1970-01-01
    • 1970-01-01
    • 2021-12-24
    • 1970-01-01
    相关资源
    最近更新 更多