You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Arch Linux编译R-mkl后R找不到icc无法安装包的求助

解决R中找不到Intel OneAPI icc编译器的问题

方法一:确保全局环境变量被所有会话加载

  • 将Intel OneAPI的路径添加到/etc/environment文件(该文件会被所有登录会话读取,包括图形界面):

    sudo nano /etc/environment
    

    在PATH行末尾追加路径,修改后示例:

    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/intel/oneapi/compiler/latest/linux/bin/intel64/"
    

    保存后重启系统或重新登录会话生效。

  • 或者调用Intel官方初始化脚本,在/etc/bash.bashrc中添加:

    source /opt/intel/oneapi/setvars.sh > /dev/null 2>&1
    

    该脚本会自动配置所有OneAPI相关环境变量,比手动添加PATH更全面。

方法二:在R中手动指定编译器

  • 临时方案:在当前R会话中设置CC环境变量后再安装包:

    Sys.setenv(CC = "/opt/intel/oneapi/compiler/latest/linux/bin/intel64/icc")
    install.packages("lazyeval")
    
  • 永久方案:修改R系统配置文件/usr/lib64/R/etc/Makeconf,找到CC行替换为icc绝对路径:

    sudo nano /usr/lib64/R/etc/Makeconf
    

    修改内容:

    CC=/opt/intel/oneapi/compiler/latest/linux/bin/intel64/icc
    

    同时可检查CXX等变量,确保指向Intel对应编译器(如icpc)。

方法三:确保图形界面启动的R加载bash环境

若从图形界面启动R/RStudio,可能不会读取bash配置文件,可在用户目录创建~/.profile并添加配置:

echo 'source /opt/intel/oneapi/setvars.sh > /dev/null 2>&1' >> ~/.profile

重新登录后启动R即可生效。

内容的提问来源于stack exchange,提问作者Juliano B. Nequirito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 23:10:46