Я пытаюсь установить Rstan на моем Mac 10.13.6 High Sierra, с версией 3.5.1 'Feather Spray' R и версией 1.1.419 Rstudio, следуя этим инструкциям.
Поскольку установщик инструментария macOS R продолжал выдавать ошибку во время установки, я выбрал ручные шаги, описанные здесь .
С первой попытки я просто обновил свой XCode и следовал инструкциям, но так как это, похоже, не сработало, я удалил XCode (также из моего бункера, как предлагалось здесь ) и переустановил XCode 10.1 (10B61 ) и принял лицензию, запустив sudo xcodebuild -license в терминале, как описано здесь .
Инструменты командной строки доступны как работающие
> system('clang++ -v')
дает этот вывод:
Apple LLVM version 10.0.0 (clang-1000.11.45.5) Target:
x86_64-apple-darwin17.7.0 Thread model: posix InstalledDir:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
На следующем шаге я запустил кусок кода для конфигурации clang ++, после чего запустил следующую строку:
# print the contents to the console
> cat(readLines(MAKEVARS), sep = "\n")
привело к этому:
LDFLAGS= -L/usr/local/clang4/lib # The following statement changes
the Fortran linking path
FLIBS=-L/usr/local/gfortran/lib/gcc/x86_64-apple-darwin16/6.3.0 #
End Fortran linking path statement # The following statement changes
the Fortran linking path
FLIBS=-L/usr/local/gfortran/lib/gcc/x86_64-apple-darwin16/6.3.0 #
End Fortran linking path statement CC=/usr/local/clang4/bin/clang
CXX=/usr/local/clang4/bin/clang++ CXX1X=/usr/local/clang4/bin/clang++
CXX98=/usr/local/clang4/bin/clang++
CXX11=/usr/local/clang4/bin/clang++
CXX14=/usr/local/clang4/bin/clang++
CXX17=/usr/local/clang4/bin/clang++ # The following statement
changes the Fortran linking path
FLIBS=-L/usr/local/gfortran/lib/gcc/x86_64-apple-darwin16/6.3.0 #
End Fortran linking path statement
CXX14FLAGS=-O3 -mtune=native -march=native -Wno-unused-variable
-Wno-unused-function -Wno-unknown-pragmas CC=clang CXX14=clang++ -arch x86_64 -ftemplate-depth-256
CXX14FLAGS=-O3 -mtune=native -march=native -Wno-unused-variable
-Wno-unused-function -Wno-unknown-pragmas CC=clang CXX14=clang++ -arch x86_64 -ftemplate-depth-256
Затем я установил пакет pkgbuild в соответствии с инструкциями, и должны были выполнить следующие инструкции:
pkgbuild::has_build_tools(debug = TRUE)
Чтобы убедиться, что pkgbuild считает, что ваш набор инструментов работает. Также говорится:
Если это возвращает FALSE, вернитесь к предыдущему разделу и
правильно установите набор инструментов.
После запуска строки Rstudio предлагает мне следующий комментарий:
Сборка R пакета из исходного кода требует установки дополнительных
инструменты для сборки. Хотите установить дополнительные инструменты сейчас?
Если я нажимаю «нет» на вопрос, хочу ли я установить дополнительные инструменты, R возвращает:
[1] FALSE
Если я нажимаю «да», я получаю эту страницу. Я следовал инструкциям на этой странице, чтобы загрузить и установить инструменты командной строки со страницы разработчика Apple (упомянутый второй вариант), это не имело никакого значения, и я все еще надеюсь, что при проверке строки pkgbuild требуются дополнительные инструменты сборки. Попытка через терминал работает:
xcode-select --install
Результат:
error: command line tools are already installed, use "Software Update"
to install updates
Однако в моем магазине приложений нет обновлений программного обеспечения.
Если я продолжу выполнять следующий шаг инструкций (игнорируя ошибку pkgbuild):
> fx <- inline::cxxfunction( signature(x = "integer", y = "numeric" ) , '
+ return ScalarReal( INTEGER(x)[0] * REAL(y)[0] ) ;
+ ' )
Я получаю этот вывод:
/Library/Frameworks/R.framework/Resources/bin/R: line 142:
/Library/Frameworks/R.framework/Resources/etc/x86_64/ldpaths: No such
file or directory
ERROR(s) during compilation: source code errors or compiler
configuration errors!
Program source: 1: 2: // includes from the plugin 3: #include
<R.h> 4: #include <Rdefines.h> 5: #include <R_ext/Error.h> 6:
7: 8: // user includes 9: 10: 11: // declarations 12: extern
"C" { 13: SEXP file758212ccc99c( SEXP x, SEXP y) ; 14: } 15: 16:
// definition 17: 18: SEXP file758212ccc99c( SEXP x, SEXP y ){ 19:
20: return ScalarReal( INTEGER(x)[0] * REAL(y)[0] ) ; 21:
22: Rf_warning("your C++ program does not return anything"); 23:
return R_NilValue ; 24: } 25: 26: Error in compileCode(f, code,
language = language, verbose = verbose) : Compilation ERROR,
function(s)/method(s) not created!
/Library/Frameworks/R.framework/Resources/bin/R: line 142:
/Library/Frameworks/R.framework/Resources/etc/x86_64/ldpaths: No such
file or directory In addition: Warning message: In system(cmd, intern
= !verbose) : running command '/Library/Frameworks/R.framework/Resources/bin/R CMD SHLIB
file758212ccc99c.cpp 2> file758212ccc99c.cpp.err.txt' had status 1
Это заставляет меня думать, что, может быть, что-то не так с путем к Rtools? Приношу свои извинения, если я делаю что-то явно неправильное, но я не смог найти информацию о предыдущих проблемах на этом этапе (проверка pkgbuild) и буду очень признателен за любую информацию о том, что я могу попробовать дальше! Если бы я просто удалил все со своего ноутбука, я также был бы признателен за совет, как убедиться, что все из этих неудачных попыток исчезло, если это возможно.