gpt4 book ai didi

r - 安装 R 包时覆盖特定的编译器标志

转载 作者:行者123 更新时间:2023-12-04 08:03:12 25 4
gpt4 key购买 nike

我有一个 R 脚本,它尝试安装许多软件包(省略了所有软件包,只显示了一个):

install.packages("zoo")
然后我跑
Rscript my_r.r
然后,我注意到它会尝试编译一些 C 代码:
gcc -m64 -std=gnu99 -I"/usr/include/R" -DNDEBUG -I../inst/include -I"/latest/rsg_comm/r_packages/zoo/include" -I/usr/local/include  -fpic  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches   -m64 -mtune=generic  -c any.c -o any.o
有没有办法用 -O3 要求所有包在本地编译和 -mtune=native ?
我注意到有一个 similar post建议使用 ~/R/.Makevars .但好像
  • 它将覆盖所有编译器标志,而不仅仅是我指定的 2 个标志。有没有办法指定?
  • 每个源码的源码包都要下载,不如直接用install.packages("package_name")方便,哪个会图最新版本,并通过镜像等。 或者有什么方便的方法?
  • 最佳答案

    您可以编辑您的 .R/Makevars 文件并使用 += 附加所需的标志。运营商,例如

    CFLAGS+= -O3 -Wall -mtune=native -march=native
    正如您在下面的评论中所说,如果存在冲突,则使用后一个标志。在从源代码编译方面,您可以通过 install.packages() 执行此操作。 ,例如
    install.packages("package_name", type = "source")

    关于r - 安装 R 包时覆盖特定的编译器标志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66347145/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com