When pak is enabled restore fails to remove unused dependencies
My renv.lock only lists renv as a dependency:
```
"Packages": {
"renv": {
...
```
My renv library contains tidyverse, drc and all their dependencies (a lot).
In my project neither tidyverse nor drc are used anymore at this point.
```
r$> renv::status()
No issues found -- the project is in a consistent state.
```
This seems already wrong to me, there are tons of installed dependencies that are unrequired:
```
r$> renv::dependencies()
Finding R package dependencies ... Done!
Source Package Require Version Dev
1 /Users/carlos/Desktop/Scratch/renv.lock renv FALSE
```
Now I add to some file:
```
library(tidyverse)
library(drc)
```
so that:
```
r$> renv::status()
The following package(s) are in an inconsistent state:
package installed recorded used
abind y n y
askpass y n y
backports y n y
base64enc y n y
bit y n y
bit64 y n y
...
```
At this point `renv::restore(clean = TRUE)` does nothing at all.
Perhaps I'm misunderstanding how all this should work but AFAIU:
- Before adding the `library(...)` lines `status` should have said that there were installed and unused dependencies and `restore(clean = TRUE)` should have removed them.
- After adding the `library(...)` lines the output of `status` is fine but `restore(clean = TRUE)` still does nothing.
Both behaviors seem wrong to me, according to the lock file all the installed dependencies has to be removed. More so in the first scenario where even the inferred dependencies were nil.
The documentation of `restore` clearly states:
> If clean = TRUE, restore() will additionally delete any packages in the project library that don't appear in the lockfile.
<details>
<summary>Diagnostics</summary>
```
Diagnostics Report [renv 1.2.2]
===============================
# Session Info ---------------------------------------------------------------
R version 4.5.3 (2026-03-11)
Platform: aarch64-apple-darwin20
Running under: macOS Tahoe 26.4.1
Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/4.5-arm64/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/4.5-arm64/Resources/lib/libRlapack.dylib; LAPACK version 3.12.1
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
time zone: America/Argentina/Buenos_Aires
tzcode source: internal
attached base packages:
[1] stats graphics grDevices datasets utils methods base
loaded via a namespace (and not attached):
[1] compiler_4.5.3 tools_4.5.3 yaml_2.3.12 renv_1.2.2 pak_0.9.4
# Project --------------------------------------------------------------------
Project path: "~/Desktop/Scratch"
# Status ---------------------------------------------------------------------
The following package(s) are in an inconsistent state:
package installed recorded used
abind y n y
askpass y n y
backports y n y
base64enc y n y
bit y n y
bit64 y n y
blob y n y
boot y n y
broom y n y
bslib y n y
cachem y n y
callr y n y
car y n y
carData y n y
cellranger y n y
cli y n y
clipr y n y
codetools y n y
colorspace y n y
conflicted y n y
cowplot y n y
cpp11 y n y
crayon y n y
curl y n y
data.table y n y
DBI y n y
dbplyr y n y
Deriv y n y
digest y n y
doBy y n y
dplyr y n y
drc y n y
dtplyr y n y
evaluate y n y
farver y n y
fastmap y n y
fontawesome y n y
forcats y n y
forecast y n y
Formula y n y
fracdiff y n y
fs y n y
gargle y n y
generics y n y
ggplot2 y n y
glue y n y
googledrive y n y
googlesheets4 y n y
gtable y n y
gtools y n y
haven y n y
highr y n y
hms y n y
htmltools y n y
httr y n y
ids y n y
isoband y n y
jquerylib y n y
jsonlite y n y
knitr y n y
labeling y n y
lattice y n y
lifecycle y n y
lme4 y n y
lmtest y n y
lubridate y n y
magrittr y n y
MASS y n y
Matrix y n y
MatrixModels y n y
memoise y n y
mgcv y n y
microbenchmark y n y
mime y n y
minqa y n y
modelr y n y
multcomp y n y
mvtnorm y n y
nlme y n y
nloptr y n y
nnet y n y
numDeriv y n y
openssl y n y
pbkrtest y n y
pillar y n y
pkgconfig y n y
plotrix y n y
processx y n y
progress n n y
ps y n y
purrr y n y
quantreg y n y
R6 y n y
ragg y n y
rappdirs y n y
rbibutils y n y
RColorBrewer y n y
Rcpp y n y
RcppArmadillo n n y
RcppEigen n n y
Rdpack y n y
readr y n y
readxl y n y
reformulas y n y
rematch y n y
rematch2 y n y
reprex y n y
rlang y n y
rmarkdown y n y
rstudioapi y n y
rvest y n y
S7 y n y
sandwich y n y
sass y n y
scales y n y
selectr y n y
SparseM y n y
stringi y n y
stringr y n y
survival y n y
sys y n y
systemfonts y n y
textshaping y n y
TH.data y n y
tibble y n y
tidyr y n y
tidyselect y n y
tidyverse y n y
timechange y n y
timeDate y n y
tinytex y n y
tzdb y n y
urca y n y
utf8 y n y
uuid y n y
vctrs y n y
viridisLite y n y
vroom y n y
withr y n y
xfun y n y
xml2 y n y
yaml y n y
zoo y n y
See `?renv::status` for advice on resolving these issues.
# Packages -------------------------------------------------------------------
Library Source Lockfile Source Path Dependency
DBI 1.3.0 CRAN <NA> <NA> [1] indirect
Deriv 4.2.0 CRAN <NA> <NA> [1] indirect
Formula 1.2-5 CRAN <NA> <NA> [1] indirect
KernSmooth 2.23-26 CRAN <NA> <NA> [2] <NA>
MASS 7.3-65 CRAN <NA> <NA> [2] indirect
Matrix 1.7-5 CRAN <NA> <NA> [1] indirect
MatrixModels 0.5-4 CRAN <NA> <NA> [1] indirect
R6 2.6.1 CRAN <NA> <NA> [1] indirect
RColorBrewer 1.1-3 CRAN <NA> <NA> [1] indirect
Rcpp 1.1.1-1.1 CRAN <NA> <NA> [1] indirect
RcppArmadillo <NA> <NA> <NA> <NA> <NA> indirect
RcppEigen <NA> <NA> <NA> <NA> <NA> indirect
Rdpack 2.6.6 CRAN <NA> <NA> [1] indirect
S7 0.2.2 CRAN <NA> <NA> [1] indirect
SparseM 1.84-2 CRAN <NA> <NA> [1] indirect
TH.data 1.1-5 CRAN <NA> <NA> [1] indirect
abind 1.4-8 CRAN <NA> <NA> [1] indirect
askpass 1.2.1 CRAN <NA> <NA> [1] indirect
backports 1.5.1 CRAN <NA> <NA> [1] indirect
base64enc 0.1-6 CRAN <NA> <NA> [1] indirect
bit 4.6.0 CRAN <NA> <NA> [1] indirect
bit64 4.8.0 CRAN <NA> <NA> [1] indirect
blob 1.3.0 CRAN <NA> <NA> [1] indirect
boot 1.3-32 CRAN <NA> <NA> [2] indirect
broom 1.0.12 CRAN <NA> <NA> [1] indirect
bslib 0.10.0 CRAN <NA> <NA> [1] indirect
cachem 1.1.0 CRAN <NA> <NA> [1] indirect
callr 3.7.6 CRAN <NA> <NA> [1] indirect
car 3.1-5 CRAN <NA> <NA> [1] indirect
carData 3.0-6 CRAN <NA> <NA> [1] indirect
cellranger 1.1.0 CRAN <NA> <NA> [1] indirect
class 7.3-23 CRAN <NA> <NA> [2] <NA>
cli 3.6.6 CRAN <NA> <NA> [1] indirect
clipr 0.8.0 CRAN <NA> <NA> [1] indirect
cluster 2.1.8.2 CRAN <NA> <NA> [2] <NA>
codetools 0.2-20 CRAN <NA> <NA> [2] indirect
colorspace 2.1-2 CRAN <NA> <NA> [1] indirect
compiler <NA> <NA> <NA> <NA> [2] indirect
conflicted 1.2.0 CRAN <NA> <NA> [1] indirect
cowplot 1.2.0 CRAN <NA> <NA> [1] indirect
cpp11 0.5.4 CRAN <NA> <NA> [1] indirect
crayon 1.5.3 CRAN <NA> <NA> [1] indirect
curl 7.1.0 CRAN <NA> <NA> [1] indirect
data.table 1.18.2.1 CRAN <NA> <NA> [1] indirect
dbplyr 2.5.2 CRAN <NA> <NA> [1] indirect
digest 0.6.39 CRAN <NA> <NA> [1] indirect
doBy 4.7.1 CRAN <NA> <NA> [1] indirect
dplyr 1.2.1 CRAN <NA> <NA> [1] indirect
drc 3.0-1 CRAN <NA> <NA> [1] direct
dtplyr 1.3.3 CRAN <NA> <NA> [1] indirect
evaluate 1.0.5 CRAN <NA> <NA> [1] indirect
farver 2.1.2 CRAN <NA> <NA> [1] indirect
fastmap 1.2.0 CRAN <NA> <NA> [1] indirect
fontawesome 0.5.3 CRAN <NA> <NA> [1] indirect
forcats 1.0.1 CRAN <NA> <NA> [1] indirect
forecast 9.0.2 CRAN <NA> <NA> [1] indirect
foreign 0.8-91 CRAN <NA> <NA> [2] <NA>
fracdiff 1.5-3 CRAN <NA> <NA> [1] indirect
fs 2.1.0 CRAN <NA> <NA> [1] indirect
gargle 1.6.1 CRAN <NA> <NA> [1] indirect
generics 0.1.4 CRAN <NA> <NA> [1] indirect
ggplot2 4.0.3 CRAN <NA> <NA> [1] indirect
glue 1.8.1 CRAN <NA> <NA> [1] indirect
googledrive 2.1.2 CRAN <NA> <NA> [1] indirect
googlesheets4 1.1.2 CRAN <NA> <NA> [1] indirect
grDevices <NA> <NA> <NA> <NA> [2] indirect
graphics <NA> <NA> <NA> <NA> [2] indirect
grid <NA> <NA> <NA> <NA> [2] indirect
gtable 0.3.6 CRAN <NA> <NA> [1] indirect
gtools 3.9.5 CRAN <NA> <NA> [1] indirect
haven 2.5.5 CRAN <NA> <NA> [1] indirect
highr 0.12 CRAN <NA> <NA> [1] indirect
hms 1.1.4 CRAN <NA> <NA> [1] indirect
htmltools 0.5.9 CRAN <NA> <NA> [1] indirect
httr 1.4.8 CRAN <NA> <NA> [1] indirect
ids 1.0.1 CRAN <NA> <NA> [1] indirect
isoband 0.3.0 CRAN <NA> <NA> [1] indirect
jquerylib 0.1.4 CRAN <NA> <NA> [1] indirect
jsonlite 2.0.0 CRAN <NA> <NA> [1] indirect
knitr 1.51 CRAN <NA> <NA> [1] indirect
labeling 0.4.3 CRAN <NA> <NA> [1] indirect
lattice 0.22-9 CRAN <NA> <NA> [2] indirect
lifecycle 1.0.5 CRAN <NA> <NA> [1] indirect
lme4 2.0-1 CRAN <NA> <NA> [1] indirect
lmtest 0.9-40 CRAN <NA> <NA> [1] indirect
lubridate 1.9.5 CRAN <NA> <NA> [1] indirect
magrittr 2.0.5 CRAN <NA> <NA> [1] indirect
memoise 2.0.1 CRAN <NA> <NA> [1] indirect
methods <NA> <NA> <NA> <NA> [2] indirect
mgcv 1.9-4 CRAN <NA> <NA> [2] indirect
microbenchmark 1.5.0 CRAN <NA> <NA> [1] indirect
mime 0.13 CRAN <NA> <NA> [1] indirect
minqa 1.2.8 CRAN <NA> <NA> [1] indirect
modelr 0.1.11 CRAN <NA> <NA> [1] indirect
multcomp 1.4-30 CRAN <NA> <NA> [1] indirect
mvtnorm 1.3-7 CRAN <NA> <NA> [1] indirect
nlme 3.1-169 CRAN <NA> <NA> [1] indirect
nloptr 2.2.1 CRAN <NA> <NA> [1] indirect
nnet 7.3-20 CRAN <NA> <NA> [2] indirect
numDeriv 2016.8-1.1 CRAN <NA> <NA> [1] indirect
openssl 2.4.0 CRAN <NA> <NA> [1] indirect
pak 0.9.4 https://r-lib.github.io/p/pak/stable/mac.binary.big-sur-arm64/darwin20/aarch64 <NA> <NA> [1] <NA>
parallel <NA> <NA> <NA> <NA> [2] indirect
pbkrtest 0.5.5 CRAN <NA> <NA> [1] indirect
pillar 1.11.1 CRAN <NA> <NA> [1] indirect
pkgconfig 2.0.3 CRAN <NA> <NA> [1] indirect
plotrix 3.8-14 CRAN <NA> <NA> [1] indirect
processx 3.9.0 CRAN <NA> <NA> [1] indirect
progress <NA> <NA> <NA> <NA> <NA> indirect
ps 1.9.3 CRAN <NA> <NA> [1] indirect
purrr 1.2.2 CRAN <NA> <NA> [1] indirect
quantreg 6.1 CRAN <NA> <NA> [1] indirect
ragg 1.5.2 CRAN <NA> <NA> [1] indirect
rappdirs 0.3.4 CRAN <NA> <NA> [1] indirect
rbibutils 2.4.1 CRAN <NA> <NA> [1] indirect
readr 2.2.0 CRAN <NA> <NA> [1] indirect
readxl 1.4.5 CRAN <NA> <NA> [1] indirect
reformulas 0.4.4 CRAN <NA> <NA> [1] indirect
rematch 2.0.0 CRAN <NA> <NA> [1] indirect
rematch2 2.1.2 CRAN <NA> <NA> [1] indirect
renv 1.2.2 CRAN 1.2.2 CRAN [1] direct
reprex 2.1.1 CRAN <NA> <NA> [1] indirect
rlang 1.2.0 CRAN <NA> <NA> [1] indirect
rmarkdown 2.31 CRAN <NA> <NA> [1] indirect
rpart 4.1.24 CRAN <NA> <NA> [2] <NA>
rstudioapi 0.18.0 CRAN <NA> <NA> [1] indirect
rvest 1.0.5 CRAN <NA> <NA> [1] indirect
sandwich 3.1-1 CRAN <NA> <NA> [1] indirect
sass 0.4.10 CRAN <NA> <NA> [1] indirect
scales 1.4.0 CRAN <NA> <NA> [1] indirect
selectr 0.5-1 CRAN <NA> <NA> [1] indirect
spatial 7.3-18 CRAN <NA> <NA> [2] <NA>
splines <NA> <NA> <NA> <NA> [2] indirect
stats <NA> <NA> <NA> <NA> [2] indirect
stringi 1.8.7 CRAN <NA> <NA> [1] indirect
stringr 1.6.0 CRAN <NA> <NA> [1] indirect
survival 3.8-6 CRAN <NA> <NA> [2] indirect
sys 3.4.3 CRAN <NA> <NA> [1] indirect
systemfonts 1.3.2 CRAN <NA> <NA> [1] indirect
textshaping 1.0.5 CRAN <NA> <NA> [1] indirect
tibble 3.3.1 CRAN <NA> <NA> [1] indirect
tidyr 1.3.2 CRAN <NA> <NA> [1] indirect
tidyselect 1.2.1 CRAN <NA> <NA> [1] indirect
tidyverse 2.0.0 CRAN <NA> <NA> [1] direct
timeDate 4052.112 CRAN <NA> <NA> [1] indirect
timechange 0.4.0 CRAN <NA> <NA> [1] indirect
tinytex 0.59 CRAN <NA> <NA> [1] indirect
tools <NA> <NA> <NA> <NA> [2] indirect
tzdb 0.5.0 CRAN <NA> <NA> [1] indirect
urca 1.3-4 CRAN <NA> <NA> [1] indirect
utf8 1.2.6 CRAN <NA> <NA> [1] indirect
utils <NA> <NA> <NA> <NA> [2] indirect
uuid 1.2-2 CRAN <NA> <NA> [1] indirect
vctrs 0.7.3 CRAN <NA> <NA> [1] indirect
viridisLite 0.4.3 CRAN <NA> <NA> [1] indirect
vroom 1.7.1 CRAN <NA> <NA> [1] indirect
withr 3.0.2 CRAN <NA> <NA> [1] indirect
xfun 0.57 CRAN <NA> <NA> [1] indirect
xml2 1.5.2 CRAN <NA> <NA> [1] indirect
yaml 2.3.12 CRAN <NA> <NA> [1] indirect
zoo 1.8-15 CRAN <NA> <NA> [1] indirect
[1]: /Users/carlos/Desktop/Scratch/.renv/library/macos/R-4.5/aarch64-apple-darwin20
[2]: /Users/carlos/Library/Caches/org.R-project.R/R/renv/sandbox/macos/R-4.5/aarch64-apple-darwin20/4cd76b74
# /Library/Frameworks/R.framework/Resources/etc/Makeconf ---------------------
# etc/Makeconf. Generated from Makeconf.in by configure. -*- Makefile -*-
#
# ${R_HOME}/etc/Makeconf
#
# R was configured using the following call
# (not including env. vars and site configuration)
# configure 'FW_VERSION=4.5-arm64' 'CC=clang -arch arm64' 'CXX=clang++ -arch arm64' 'OBJC=clang -arch arm64' 'FC=/opt/gfortran/bin/gfortran -arch arm64' 'CFLAGS=-falign-functions=64 -Wall -g -O2' 'CXXFLAGS=-falign-functions=64 -Wall -g -O2' 'OBJCFLAGS=-falign-functions=64 -Wall -g -O2' 'FCFLAGS=-Wall -g -O2' 'F77FLAGS=-Wall -g -O2' 'LDFLAGS=-L/opt/R/arm64/lib' 'CPPFLAGS=-I/opt/R/arm64/include' '--enable-memory-profiling' '--enable-R-framework' '--with-tcl-config=/opt/R/arm64/lib/tclConfig.sh' '--with-tk-config=/opt/R/arm64/lib/tkConfig.sh' '--with-2025blas' '--build=aarch64-apple-darwin20' 'build_alias=aarch64-apple-darwin20' 'PKG_CONFIG_PATH=/usr/lib/pkgconfig:/opt/R/arm64/lib/pkgconfig:/opt/R/arm64/share/pkgconfig:/opt/X11/lib/pkgconfig:/opt/X11/share/pkgconfig'
## This fails if it contains spaces, or if it is quoted
include $(R_SHARE_DIR)/make/vars.mk
AR = ar
BLAS_LIBS = -L"$(R_HOME)/lib$(R_ARCH)" -lRblas
## C compilers
CC = clang -arch arm64 -std=gnu2x
CFLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CC17 = clang -arch arm64 -std=gnu17
C17FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CC23 = clang -arch arm64 -std=gnu2x
C23FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CC90 = clang -arch arm64 -std=gnu90
C90FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CC99 = clang -arch arm64 -std=gnu99
C99FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CPICFLAGS = -fPIC
CPPFLAGS = -I/opt/R/arm64/include
C_VISIBILITY = -fvisibility=hidden
## C++ compilers
CXX = clang++ -arch arm64 -std=gnu++17
CXXFLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CXXPICFLAGS = -fPIC
CXX11 = clang++ -arch arm64
CXX11FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CXX11PICFLAGS = -fPIC
CXX11STD = -std=gnu++11
CXX14 = clang++ -arch arm64
CXX14FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CXX14PICFLAGS = -fPIC
CXX14STD = -std=gnu++14
CXX17 = clang++ -arch arm64
CXX17FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CXX17PICFLAGS = -fPIC
CXX17STD = -std=gnu++17
CXX20 = clang++ -arch arm64
CXX20FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CXX20PICFLAGS = -fPIC
CXX20STD = -std=gnu++20
CXX23 = clang++ -arch arm64
CXX23FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CXX23PICFLAGS = -fPIC
CXX23STD = -std=gnu++23
CXX26 = clang++ -arch arm64
CXX26FLAGS = -falign-functions=64 -Wall -g -O2 $(LTO)
CXX26PICFLAGS = -fPIC
CXX26STD = -std=gnu++26
CXX_VISIBILITY = -fvisibility=hidden
DYLIB_EXT = .dylib
DYLIB_LD = $(CC)
DYLIB_LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CFLAGS) $(CPICFLAGS)
## should be used by packages for dylibs, but at the time of writing was not
DYLIB_LINK = $(DYLIB_LD) $(DYLIB_LDFLAGS) $(LDFLAGS)
ECHO = echo
ECHO_C = \c
ECHO_N =
ECHO_T =
## Fortran
FC = /opt/gfortran/bin/gfortran -arch arm64
FCFLAGS = -Wall -g -O2 $(LTO_FC)
## additional libs needed when linking with $(FC), e.g. on some Oracle compilers
FCLIBS_XTRA =
FFLAGS = -Wall -g -O2 $(LTO_FC)
FLIBS = -L/opt/gfortran/lib/gcc/aarch64-apple-darwin20.0/14.2.0 -L/opt/gfortran/lib -lemutls_w -lheapt_w -lgfortran -lquadmath
FPICFLAGS = -fPIC
FPIEFLAGS = -fPIE
F_VISIBILITY = -fvisibility=hidden
FOUNDATION_CPPFLAGS =
FOUNDATION_LIBS = -framework Foundation
JAR = /usr/bin/jar
JAVA = /usr/bin/java
JAVAC = /usr/bin/javac
JAVAH = /usr/bin/javah
## JAVA_HOME might be used in the next three.
## They are for packages 'JavaGD' and 'rJava'
JAVA_HOME = /Library/Java/JavaVirtualMachines/jdk-11.0.18+10/Contents/Home
JAVA_CPPFLAGS = -I$(JAVA_HOME)/include -I$(JAVA_HOME)/include/darwin
JAVA_LIBS = -L$(JAVA_HOME)/lib/server -ljvm
JAVA_LD_LIBRARY_PATH = $(JAVA_HOME)/lib/server
LAPACK_LIBS = -L"$(R_HOME)/lib$(R_ARCH)" -lRlapack
LDFLAGS = -L/opt/R/arm64/lib
## We only need this is if it is external and not libc, as otherwise link to R
## Oo macOS, where libintl is static and so compiled in, can still link to R
LIBINTL =
LIBM =
LIBR0 = -L"$(R_HOME)/lib$(R_ARCH)"
LIBR1 = -lR
LIBR = -F/Library/Frameworks/R.framework/.. -framework R
LIBS = -lpcre2-8 -lbz2 -lz -licucore -ldl -lm -liconv
## needed by R CMD config
LIBnn = lib
LIBTOOL = $(SHELL) "$(R_HOME)/bin/libtool"
## set for --enable-lto, --enable-lto=check
LTO =
LTO_FC =
LTO_LD =
## set for --enable-lto=R, used in INSTALL
LTO_OPT =
LTO_FC_OPT =
## needed to build applications linking to static libR
MAIN_LD = $(CC)
MAIN_LDFLAGS =
MAIN_LINK = $(MAIN_LD) $(MAIN_LDFLAGS) $(LDFLAGS)
MKINSTALLDIRS = "$(R_HOME)/bin/mkinstalldirs"
NM = /usr/bin/nm -B
OBJC = clang -arch arm64
OBJCFLAGS = -falign-functions=64 -Wall -g -O2 -fobjc-exceptions $(LTO)
OBJC_LIBS = -lobjc
OBJCXX = clang++ -arch arm64 -std=gnu++17
R_ARCH =
RANLIB = ranlib
SAFE_FFLAGS = -Wall -g -O2
## A version of SHLIB_LIBADD not overridden in install.R.
SAN_LIBS =
SED = /usr/bin/sed
SHELL = /bin/sh
SHLIB_CFLAGS =
SHLIB_CXXFLAGS =
SHLIB_CXXLD = $(CXX)
SHLIB_CXXLDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CXXFLAGS) $(CXXPICFLAGS) $(LTO_LD)
SHLIB_CXX11LD = $(CXX11) $(CXX11STD)
SHLIB_CXX11LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CXX11FLAGS) $(CXX11PICFLAGS) $(LTO_LD)
SHLIB_CXX14LD = $(CXX14) $(CXX14STD)
SHLIB_CXX14LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CXX14FLAGS) $(CXX14PICFLAGS) $(LTO_LD)
SHLIB_CXX17LD = $(CXX17) $(CXX17STD)
SHLIB_CXX17LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CXX17FLAGS) $(CXX17PICFLAGS) $(LTO_LD)
SHLIB_CXX20LD = $(CXX20) $(CXX20STD)
SHLIB_CXX20LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CXX20FLAGS) $(CXX20PICFLAGS) $(LTO_LD)
SHLIB_CXX23LD = $(CXX23) $(CXX23STD)
SHLIB_CXX23LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CXX23FLAGS) $(CXX23PICFLAGS) $(LTO_LD)
SHLIB_CXX26LD = $(CXX26) $(CXX26STD)
SHLIB_CXX26LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CXX26FLAGS) $(CXX26PICFLAGS) $(LTO_LD)
SHLIB_EXT = .so
SHLIB_FCLD = $(FC)
SHLIB_FCLDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(FCFLAGS) $(FPICFLAGS)
SHLIB_FFLAGS =
SHLIB_LD = $(CC)
## used for add-on packages linked by C
SHLIB_LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CFLAGS) $(CPICFLAGS) $(LTO_LD)
## used for standard packages
SHLIB_LDFLAGS_R = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup# $(CFLAGS) $(CPICFLAGS) $(LTO_LD)
## used in install.R to add OBJC_LIBS, FLIBS ....
SHLIB_LIBADD =
## We want to ensure libR is picked up from $(R_HOME)/lib
## before e.g. /usr/local/lib if a version is already installed.
SHLIB_LINK = $(SHLIB_LD) $(SHLIB_LDFLAGS) $(LIBR0) $(LDFLAGS)
SHLIB_OPENMP_CFLAGS =
SHLIB_OPENMP_CXXFLAGS =
SHLIB_OPENMP_FFLAGS =
STRIP_STATIC_LIB = strip -S
STRIP_SHARED_LIB = strip -x
TCLTK_CPPFLAGS = -I/opt/R/arm64/include -I/opt/R/arm64/include -I/usr/X11R6/include
TCLTK_LIBS = -L/opt/R/arm64/lib -ltcl8.6 -L/opt/R/arm64/lib -ltk8.6 -L/usr/X11R6/lib -lX11 -Wl,-weak-lXss -lXext
YACC = bison -y
## for linking to libR.a
STATIC_LIBR = # "$(R_HOME)/lib$(R_ARCH)/libR.a" $(BLAS_LIBS) $(FLIBS) $(LIBINTL) -lreadline -lncurses $(LIBS)
## These are recorded as macros for legacy use in packages
## set on AIX, formerly for old glibc (-D__NO_MATH_INLINES)
R_XTRA_CFLAGS =
## was formerly set on HP-UX
R_XTRA_CPPFLAGS = -I"$(R_INCLUDE_DIR)" -DNDEBUG
## currently unset
R_XTRA_CXXFLAGS =
## used for gfortran >= 7 in R 3.6.1 - 4.2.x
R_XTRA_FFLAGS =
## SHLIB_CFLAGS SHLIB_CXXFLAGS SHLIB_FFLAGS are apparently currently unused
## SHLIB_CXXFLAGS is undocumented, there is no SHLIB_FCFLAGS
ALL_CFLAGS = $(PKG_CFLAGS) $(CPICFLAGS) $(SHLIB_CFLAGS) $(CFLAGS)
## XDEFS was a temporary measure for use by R CMD INSTALL
ALL_CPPFLAGS = -I"$(R_INCLUDE_DIR)" -DNDEBUG $(PKG_CPPFLAGS) $(CLINK_CPPFLAGS) $(CPPFLAGS) $(XDEFS)
## CXX_DEFS allows adding defines only for C++, e.g. -DR_NO_REMAP
ALL_CXXFLAGS = $(PKG_CXXFLAGS) $(CXXPICFLAGS) $(SHLIB_CXXFLAGS) $(CXXFLAGS) $(CXX_DEFS)
ALL_OBJCFLAGS = $(PKG_OBJCFLAGS) $(CPICFLAGS) $(SHLIB_CFLAGS) $(OBJCFLAGS)
ALL_OBJCXXFLAGS = $(PKG_OBJCXXFLAGS) $(CXXPICFLAGS) $(SHLIB_CXXFLAGS) $(OBJCXXFLAGS)
ALL_FFLAGS = $(PKG_FFLAGS) $(FPICFLAGS) $(SHLIB_FFLAGS) $(FFLAGS)
## can be overridden by R CMD SHLIB
P_FCFLAGS = $(PKG_FFLAGS)
ALL_FCFLAGS = $(P_FCFLAGS) $(FPICFLAGS) $(SHLIB_FFLAGS) $(FCFLAGS)
## LIBR here as a couple of packages use this without SHLIB_LINK
ALL_LIBS = $(PKG_LIBS) $(SHLIB_LIBADD) $(SAN_LIBS) $(LIBR) $(LIBINTL)
.SUFFIXES:
.SUFFIXES: .c .cc .cpp .d .f .f90 .f95 .m .mm .M .o
.c.o:
$(CC) $(ALL_CPPFLAGS) $(ALL_CFLAGS) -c $< -o $@
.c.d:
@echo "making $@ from $<"
@$(CC) -MM $(ALL_CPPFLAGS) $< > $@
.cc.o:
$(CXX) $(ALL_CPPFLAGS) $(ALL_CXXFLAGS) -c $< -o $@
.cpp.o:
$(CXX) $(ALL_CPPFLAGS) $(ALL_CXXFLAGS) -c $< -o $@
.cc.d:
@echo "making $@ from $<"
@$(CXX) -M $(ALL_CPPFLAGS) $< > $@
.cpp.d:
@echo "making $@ from $<"
@$(CXX) -M $(ALL_CPPFLAGS) $< > $@
.m.o:
$(OBJC) $(ALL_CPPFLAGS) $(ALL_OBJCFLAGS) -c $< -o $@
.m.d:
@echo "making $@ from $<"
@$(OBJC) -MM $(ALL_CPPFLAGS) $< > $@
.mm.o:
$(OBJCXX) $(ALL_CPPFLAGS) $(ALL_OBJCXXFLAGS) -c $< -o $@
.M.o:
$(OBJCXX) $(ALL_CPPFLAGS) $(ALL_OBJCXXFLAGS) -c $< -o $@
.f.o:
$(FC) $(ALL_FFLAGS) -c $< -o $@
.f95.o:
$(FC) $(ALL_FCFLAGS) -c $< -o $@
.f90.o:
$(FC) $(ALL_FCFLAGS) -c $< -o $@
# R CMD config --all ---------------------------------------------------------
CC = clang -arch arm64 -std=gnu2x
CFLAGS = -falign-functions=64 -Wall -g -O2
CPICFLAGS = -fPIC
CPPFLAGS = -I/opt/R/arm64/include
CC17 = clang -arch arm64 -std=gnu17
C17FLAGS = -falign-functions=64 -Wall -g -O2
CC23 = clang -arch arm64 -std=gnu2x
C23FLAGS = -falign-functions=64 -Wall -g -O2
CC90 = clang -arch arm64 -std=gnu90
C90FLAGS = -falign-functions=64 -Wall -g -O2
CC99 = clang -arch arm64 -std=gnu99
C99FLAGS = -falign-functions=64 -Wall -g -O2
CXX = clang++ -arch arm64 -std=gnu++17
CXXFLAGS = -falign-functions=64 -Wall -g -O2
CXXPICFLAGS = -fPIC
CXX11 = clang++ -arch arm64
CXX11STD = -std=gnu++11
CXX11FLAGS = -falign-functions=64 -Wall -g -O2
CXX11PICFLAGS = -fPIC
CXX14 = clang++ -arch arm64
CXX14STD = -std=gnu++14
CXX14FLAGS = -falign-functions=64 -Wall -g -O2
CXX14PICFLAGS = -fPIC
CXX17 = clang++ -arch arm64
CXX17STD = -std=gnu++17
CXX17FLAGS = -falign-functions=64 -Wall -g -O2
CXX17PICFLAGS = -fPIC
CXX20 = clang++ -arch arm64
CXX20STD = -std=gnu++20
CXX20FLAGS = -falign-functions=64 -Wall -g -O2
CXX20PICFLAGS = -fPIC
CXX23 = clang++ -arch arm64
CXX23STD = -std=gnu++23
CXX23FLAGS = -falign-functions=64 -Wall -g -O2
CXX23PICFLAGS = -fPIC
CXX26 = clang++ -arch arm64
CXX26STD = -std=gnu++26
CXX26FLAGS = -falign-functions=64 -Wall -g -O2
CXX26PICFLAGS = -fPIC
DYLIB_EXT = .dylib
DYLIB_LD = clang -arch arm64 -std=gnu2x
DYLIB_LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
FC = /opt/gfortran/bin/gfortran -arch arm64
FFLAGS = -Wall -g -O2
FPICFLAGS = -fPIC
FLIBS = -L/opt/gfortran/lib/gcc/aarch64-apple-darwin20.0/14.2.0 -L/opt/gfortran/lib -lemutls_w -lheapt_w -lgfortran -lquadmath
FCFLAGS = -Wall -g -O2
SAFE_FFLAGS = -Wall -g -O2
OBJC = clang -arch arm64
OBJCFLAGS = -falign-functions=64 -Wall -g -O2 -fobjc-exceptions
JAVA = /usr/bin/java
JAVAC = /usr/bin/javac
JAVAH = /usr/bin/javah
JAR = /usr/bin/jar
JAVA_HOME = /Library/Java/JavaVirtualMachines/jdk-11.0.18+10/Contents/Home
JAVA_LIBS = -L/Library/Java/JavaVirtualMachines/jdk-11.0.18+10/Contents/Home/lib/server -ljvm
JAVA_CPPFLAGS = -I/Library/Java/JavaVirtualMachines/jdk-11.0.18+10/Contents/Home/include -I/Library/Java/JavaVirtualMachines/jdk-11.0.18+10/Contents/Home/include/darwin
LDFLAGS = -L/opt/R/arm64/lib
SHLIB_CFLAGS =
SHLIB_CXXFLAGS =
SHLIB_CXXLD = clang++ -arch arm64 -std=gnu++17
SHLIB_CXXLDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
SHLIB_CXX11LD = clang++ -arch arm64 -std=gnu++11
SHLIB_CXX11LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
SHLIB_CXX14LD = clang++ -arch arm64 -std=gnu++14
SHLIB_CXX14LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
SHLIB_CXX17LD = clang++ -arch arm64 -std=gnu++17
SHLIB_CXX17LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
SHLIB_CXX20LD = clang++ -arch arm64 -std=gnu++20
SHLIB_CXX20LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
SHLIB_CXX23LD = clang++ -arch arm64 -std=gnu++23
SHLIB_CXX23LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
SHLIB_CXX26LD = clang++ -arch arm64 -std=gnu++26
SHLIB_CXX26LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
SHLIB_EXT = .so
SHLIB_FFLAGS =
SHLIB_LD = clang -arch arm64 -std=gnu2x
SHLIB_LDFLAGS = -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup
TCLTK_CPPFLAGS = -I/opt/R/arm64/include -I/opt/R/arm64/include -I/usr/X11R6/include
TCLTK_LIBS = -L/opt/R/arm64/lib -ltcl8.6 -L/opt/R/arm64/lib -ltk8.6 -L/usr/X11R6/lib -lX11 -Wl,-weak-lXss -lXext
BLAS_LIBS = -L/Library/Frameworks/R.framework/Resources/lib -lRblas
LAPACK_LIBS = -L/Library/Frameworks/R.framework/Resources/lib -lRlapack
MAKE = make
LIBnn = lib
AR = ar
NM = /usr/bin/nm -B
RANLIB = ranlib
LTO =
LTO_FC =
LTO_LD =
## The following variables are defunct
CPP CXXCPP
# User Profile ---------------------------------------------------------------
[no user profile detected]
# Settings -------------------------------------------------------------------
List of 15
$ bioconductor.version : NULL
$ external.libraries : chr(0)
$ ignored.packages : chr(0)
$ lockfile.sanitize : logi TRUE
$ package.dependency.fields: chr [1:3] "Imports" "Depends" "LinkingTo"
$ ppm.enabled : NULL
$ ppm.ignored.urls : chr(0)
$ r.version : NULL
$ snapshot.dev : logi FALSE
$ snapshot.type : chr "implicit"
$ use.cache : logi TRUE
$ vcs.ignore.cellar : logi TRUE
$ vcs.ignore.library : logi TRUE
$ vcs.ignore.local : logi TRUE
$ vcs.manage.ignores : logi TRUE
# Options --------------------------------------------------------------------
List of 9
$ defaultPackages : chr [1:6] "datasets" "utils" "grDevices" "graphics" ...
$ download.file.method : NULL
$ download.file.extra : NULL
$ install.packages.compile.from.source: chr "interactive"
$ pkgType : chr "both"
$ repos : Named chr "https://cloud.r-project.org"
..- attr(*, "names")= chr "CRAN"
$ renv.consent : logi TRUE
$ renv.project.path : chr "/Users/carlos/Desktop/Scratch"
$ renv.verbose : logi TRUE
# Environment Variables ------------------------------------------------------
CC = <NA>
CFLAGS = <NA>
CPPFLAGS = <NA>
CXX = <NA>
CXXFLAGS = <NA>
HOME = /Users/carlos
LANG = en_US.UTF-8
LDFLAGS = <NA>
MAKE = make
R_LIBS = .rlib:/Users/carlos/.rlib
R_LIBS_SITE = /Library/Frameworks/R.framework/Resources/site-library
R_LIBS_USER = /Users/carlos/Desktop/Scratch/.renv/library/macos/R-4.5/aarch64-apple-darwin20
RENV_CONFIG_PAK_ENABLED = TRUE
RENV_CONFIG_PPM_DEFAULT = FALSE
RENV_DEFAULT_R_ENVIRON = <NA>
RENV_DEFAULT_R_ENVIRON_USER = <NA>
RENV_DEFAULT_R_LIBS = .rlib:/Users/carlos/.rlib
RENV_DEFAULT_R_LIBS_SITE = /Library/Frameworks/R.framework/Resources/site-library
RENV_DEFAULT_R_LIBS_USER = /Users/carlos/Library/R/arm64/4.5/library
RENV_DEFAULT_R_PROFILE = <NA>
RENV_DEFAULT_R_PROFILE_USER = <NA>
RENV_PATHS_RENV = .renv
RENV_PROJECT = /Users/carlos/Desktop/Scratch
# PATH -----------------------------------------------------------------------
- /Users/carlos/Desktop/Scratch/.venv/bin
- /Users/carlos/.venv/lib/python3.13/site-packages/quarto_cli/bin
- /Users/carlos/Documents/Util
- /Users/carlos/.venv/bin
- /Users/carlos/.local/bin
- /opt/homebrew/bin
- /opt/homebrew/sbin
- /usr/local/bin
- /System/Cryptexes/App/usr/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
- /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin
- /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin
- /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin
- /opt/pkg/env/active/bin
- /opt/pmk/env/global/bin
- /Users/carlos/.venv/lib/python3.13/site-packages/quarto_cli/bin
- /Users/carlos/Documents/Util
- /Users/carlos/.venv/bin
- /Users/carlos/.local/bin
- /Users/carlos/.vscode/extensions/ms-python.debugpy-2025.18.0-darwin-arm64/bundled/scripts/noConfigScripts
# Cache ----------------------------------------------------------------------
There are a total of 1 package installed in the renv cache.
Cache path: "~/Library/Caches/org.R-project.R/R/renv/cache/v5/macos/R-4.5/aarch64-apple-darwin20"
```
</details>
关闭于 2026-04-28 1 条评论