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

如何让RStudio不忽略Makevars中指定使用clang的配置?

问题:Makefile指定clang编译但devtools::install仍调用g++

我在Makefile中配置了如下内容:

PKG_CC = clang-15
PKG_CXX = clang++-15
PKG_CXXFLAGS = -g -O0 -fopenmp
PKG_LIBS = $(SHLIB_OPENMP_CXXFLAGS)
CXX_STD = CXX11
PKG_CPPFLAGS = -UDEBUG -g

但执行devtools::install()时,终端显示的编译命令是g++ -std=gnu++11 -I"/usr/share/R/include"...,并未使用我指定的clang相关命令。

不过测试pkgbuild::check_build_tools(debug = TRUE)时,系统显示正常使用clang-15编译:

> pkgbuild::check_build_tools(debug = TRUE)
Trying to compile a simple C file
Running /usr/lib/R/bin/R CMD SHLIB foo.c
using C compiler: ‘Ubuntu clang version 15.0.7’
clang-15 -I"/usr/share/R/include" -DNDEBUG       -fpic  -g -O2 -ffile-prefix-map=/build/r-base-JhpCKt/r-base-4.3.0=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -c foo.c -o foo.o
clang-15 -shared -L/usr/lib/R/lib -Wl,-Bsymbolic-functions -flto=auto -ffat-lto-objects -flto=auto -Wl,-z,relro -o foo.so foo.o -L/usr/lib/R/lib -lR
 
Your system is ready to build packages!

目前我已删除.Rproj.user目录,并尝试执行以下命令,但问题仍未解决:

devtools::clean_dll()
devtools::document()
devtools::install()

内容的提问来源于stack exchange,提问作者pachadotdev

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 06:10:13