【发布时间】:2019-12-19 19:57:02
【问题描述】:
我的包 .so 文件超过 3 MB(最大 10 MB),具体取决于编译器和系统。这会在我的包中生成带有R CMD check 的注释多年。我的包不包含这么多代码,所以我最终搜索以减小大小,并找到了 Dirk Eddelbuettel 的 excellent post。
按照我在.R/Makevars 中添加SHLIB_CXX11LDFLAGS = -Wl,-S -shared 的建议,我的库大小从10.4 MB 下降到580 KB!!我第一次有 0 个错误、0 个警告和 0 个注释。对!
但这只是本地解决方案。在帖子的末尾建议src/Makevars
strippedLib: $(SHLIB)
if test -e "/usr/bin/strip"; then /usr/bin/strip --strip-debug $(SHLIB); fi
.phony: strippedLib
但有人提到:
而且这个方案甚至可以通过 CRAN 的验证,但我还没有尝试过。
我的问题如下:
- 帖子是 2017 年 8 月发布的。有人知道它是否通过了 CRAN 检查吗?
- 这是一个 GNU/Linux(可能是 macOS)解决方案。是否有跨平台选项?
【问题讨论】: