2014-04-17 35 views
5

Gần đây tôi đã cập nhật R thành 3.1.0. Tôi đã cố gắng để di chuyển các gói của tôi hơn 3,1 bên trong R.Framework (Tôi đang chạy OSX Mavericks) và bằng cách nào đó đã thực hiện một mess của nó, do đó, đã hoàn tất gỡ bỏ cài đặt tất cả mọi thứ trước khi cài đặt sạch.Lỗi cài đặt gói: biên dịch không thành công

Khi cài đặt lại gói Tôi không có vấn đề cho đến khi tôi nhấn gói forecast trong đó sản lượng các lỗi sau:

 package ‘forecast’ is available as a source package but not as a binary 

Warning in install.packages : 
package ‘forecast’ is not available (for R version 3.1.0) 

tôi thực sự đã có R 3.1.0 và cả dự báo và HTS làm việc cùng nhau trước khi cài đặt lại vì vậy tôi nghi ngờ vấn đề xuất phát từ một cái gì đó tôi đã làm, chứ không phải là một vấn đề tương thích.

Tôi chạy sau để xem nếu tôi có thể tìm ra một số chi tiết về quá trình cài đặt thất bại: install.packages("forecast", type = "source", verbose = T, quiet = F)

Kết quả trong số đó là một chút ngoài tôi, nhưng có thể giúp đỡ trong chẩn đoán:

system (cmd0): /Library/Frameworks/R.framework/Resources/bin/R CMD INSTALL 
trying URL 'http://cran.rstudio.com/src/contrib/forecast_5.3.tar.gz' 
Content type 'application/x-gzip' length 150395 bytes (146 Kb) 
opened URL 
================================================== 
downloaded 146 Kb 

foundpkgs: forecast, /var/folders/0y/_13fkvws0tn5xh4m8wsymkdh0000gp/T//RtmpzTzSpG/downloaded_packages/forecast_5.3.tar.gz 
files: /var/folders/0y/_13fkvws0tn5xh4m8wsymkdh0000gp/T//RtmpzTzSpG/downloaded_packages/forecast_5.3.tar.gz 
* installing *source* package ‘forecast’ ... 
** package ‘forecast’ successfully unpacked and MD5 sums checked 
** libs 
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c calcBATS.cpp -o calcBATS.o 
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c calcTBATS.cpp -o calcTBATS.o 
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c etsTargetFunction.cpp -o etsTargetFunction.o 
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c etsTargetFunctionWrapper.cpp -o etsTargetFunctionWrapper.o 
clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c etscalc.c -o etscalc.o 
clang -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c etspolyroot.c -o etspolyroot.o 
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c makeBATSMatrices.cpp -o makeBATSMatrices.o 
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c makeTBATSMatrices.cpp -o makeTBATSMatrices.o 
makeTBATSMatrices.cpp:11:6: warning: unused variable 'lengthSeasonal' [-Wunused-variable] 
     int lengthSeasonal = 0; 
      ^
1 warning generated. 
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c updateMatrices.cpp -o updateMatrices.o 
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/Rcpp/include" -I"/Library/Frameworks/R.framework/Versions/3.1/Resources/library/RcppArmadillo/include" -fPIC -Wall -mtune=core2 -g -O2 -c updateTBATSMatrices.cpp -o updateTBATSMatrices.o 
updateTBATSMatrices.cpp:38:10: warning: unused variable 'gammaVector' [-Wunused-variable] 
     double *gammaVector; 
       ^
1 warning generated. 
clang++ -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/usr/local/lib -o forecast.so calcBATS.o calcTBATS.o etsTargetFunction.o etsTargetFunctionWrapper.o etscalc.o etspolyroot.o makeBATSMatrices.o makeTBATSMatrices.o updateMatrices.o updateTBATSMatrices.o -L/Library/Frameworks/R.framework/Resources/lib -lRlapack -L/Library/Frameworks/R.framework/Resources/lib -lRblas -L/usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2 -lgfortran -lquadmath -lm -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation 
ld: warning: directory not found for option '-L/usr/local/lib/gcc/x86_64-apple-darwin13.0.0/4.8.2' 
ld: library not found for -lgfortran 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
make: *** [forecast.so] Error 1 
ERROR: compilation failed for package ‘forecast’ 
* removing ‘/Library/Frameworks/R.framework/Versions/3.1/Resources/library/forecast’ 
Warning in install.packages : 
    installation of package ‘forecast’ had non-zero exit status 

The downloaded source packages are in 
    ‘/private/var/folders/0y/_13fkvws0tn5xh4m8wsymkdh0000gp/T/RtmpzTzSpG/downloaded_packages’ 

Tôi thực sự đánh giá cao một số trợ giúp tại đây. Phần lớn mã tôi đã làm gần đây dựa vào các chức năng trong dự báo.

+0

Hãy xem lưu trữ 'r-sig-mac' có đầy đủ hướng dẫn về cách biên dịch các gói' R' trong Mavericks. –

Trả lời

2

Đây là những gì tôi đã làm (RcppArmadillo Compile Errors on OS X Mavericks)

  1. Install gfortran từ brew (. Nếu bạn không có bia, Google nó cài đặt rất đơn giản):

    brew install gfortran

    Nếu cài đặt, nâng cấp lên mới nhất với:

    brew upgrade gfortran

  2. Sau đó làm một trong những điều sau đây:

    ln -s /usr/local/Cellar/gfortran/4.8.2/gfortran/lib/libgfortran.* /usr/local/lib/

    hay thêm dòng này vào file ~/.R/Makevars:

    FLIBS=-L/usr/local/Cellar/gfortran/4.8.2/gfortran

    tôi đã lựa chọn thứ hai.

  3. Bây giờ, hãy chạy lại install.packages("forecast", type = "source") và nó sẽ hoạt động.

1

Trong trường hợp của tôi, tôi đang cố gắng cài đặt phiên bản mới nhất của gói {forecast} với devtools::install_github("robjhyndman/forecast") và có lỗi tương tự.

Sau đó, mặc dù tôi không chắc chắn nếu những gì tôi đã làm là đúng, sau câu trả lời mchangun của tôi đã làm như sau và các lỗi đã được giải quyết:

  1. brew upgrade gcc

Lỗi: gcc 5.2.0 đã được cài đặt

  1. gcc --version

Configured với: --prefix =/Applications/Xcode.app/Contents/Developer/usr --with-gxx-bao gồm- dir =/Applications/Xcode.app/Nội dung/Nhà phát triển/Nền tảng/MacOSX.platform/Nhà phát triển/SDK/MacOSX10.11.sdk/usr/include/C++/4.2.1 Apple LLVM phiên bản 7.0.0 (clang-700.1. 76) Target: x86_64-apple-darwin15.0.0 chủ đề mô hình: posix

  1. ls /usr/local/Cellar/gcc

4.9.2 4.9.2_1 5.2.0

  1. Thêm dòng FLIBS=-L/usr/local/Cellar/gcc/5.2.0 đến tập tin ~/.R/Makevars

  2. Run devtools::install_github("robjhyndman/forecast") và nó làm việc.

0

Tải gfortran từ https://gcc.gnu.org/wiki/GFortranBinariesMacOS

sudo rm -r/usr/local/gfortran/usr/local/bin/gfortran

Sau đó cài đặt gfortran

sudo vi/Library/Frameworks /R.framework/Resources/etc/Makeconf

thay đổi tất cả gfortran-4.8 thành gfortran

FC = gfortran FCFLAGS = -Wall -g -O2 $ (LTO) FCLIBS = F77 = gfortran F77_VISIBILITY = FFLAGS = -g -O2 $ (LTO)

FLIBS = -L/usr/local /lib/gcc/x86_64-apple-darwin13.0.0/4.8.2 -lgfortran -lquadmath -lm

thay đổi trên FLIBS đến dưới

FLIBS = -L/usr/local/gfortran/lib -lgfortran - lquadmath -lm

1

Thiết bị đầu cuối

  1. brew cài đặt gcc
  2. gcc --version
  3. ls/usr/local/Cellar/gcc 6.3.0_1
  4. sudo vi /Library/Frameworks/R.framework/Resources/etc/Makeconf
  5. Thêm dòng FLIBS = -L/usr/local/Cellar/gcc/6.3.0_1

Rstudio:

  1. install.packages ("forecast"
Các vấn đề liên quan