3

データ分析クラスのために Rstan をインストールする必要があります。手順はhttp://code.google.com/p/stan/wiki/RStanGettingStartedに掲載されています。Mac OS 10.5.8 および R 2.15.1 GUI 1.52 Leopard ビルド 32 ビット (6188) を実行しています。Xcode バージョン 3.1.4 をインストールしました。これは、leopard と互換性のある Xcode C++ コンパイラです (これを行うには、Mac 開発者アカウントを取得する必要がありました)。

Stan のインストール手順に従って、次のコードを入力して、コンパイラが機能しているかどうかを確認しました。

library(inline) 
library(Rcpp)
src <- ' 
  std::vector<std::string> s; 
  s.push_back("hello");
  s.push_back("world");
  return Rcpp::wrap(s);
'
hellofun <- cxxfunction(body = src, includes = '', plugin = 'Rcpp', verbose = FALSE)
cat(hellofun(), '\n') 

次のエラーが返されます。

Error in compileCode(f, code, language = language, verbose = verbose) :
Compilation ERROR, function(s)/method(s) not created! 
Library/Frameworks/R.framework/Versions/2.15/Resources/library/
Rcpp/include/Rcpp/internal/export.h: In function ‘void
Rcpp::internal::export_range__dispatch(SEXPREC*, InputIterator,
Rcpp::traits::r_type_primitive_tag)’:
/Library/Frameworks/R.framework/Versions/2.15/Resources/
library/Rcpp/include/Rcpp/internal/export.h:56: internal
compiler error: Bus error
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for
instructions.
make: *** [file795214e66510.o] Error 1
In addition: Warning message:
running command '/Library/Frameworks/R.framework/Resources/bin/
R CMD SHLIB file795214e66510.cpp 2>
file795214e66510.cpp.err.txt' had status 1

スタンをインストールしようとすると:

 install.packages('rstan', type = 'source') ] 

次の警告が表示されます: 警告メッセージ: in install.packages("rstan", type = "source") : パッケージ 'rstan' のインストールにゼロ以外の終了ステータスがありました

C++ がどのように機能するのかわかりません。私のコーディング経験はすべて R であり、C++ にコンパイルする必要はありませんでした。私は過去 4 時間ほどの間、何が問題なのかを突き止めようと懸命に努力してきました。どんな助けも大歓迎です。また、同じまたは類似の問題を抱えている私のクラスの他の約10人の学生にも役立ちます. 本当にありがとう。

4

2 に答える 2

2

別の回答で述べたように、最初のステップは Rcpp を Mac で動作させることです (つまり、少なくとも hello world の例を渡します)。

以前の Rcpp の同様の問題: https://stat.ethz.ch/pipermail/r-sig-mac/2010-July/007574.html

さらに、この Web ページhttp://useyourloaf.com/blog/2011/03/21/compiler-options-in-xcode-gcc-or-llvm.htmlから、gcc 4.2 と 4.0 は両方とも Xcode 3.14 にあるようです。 (3.14とは言っていないのでわかりません)。したがって、gcc 4.2.1 が R で使用されていることを確認することが重要です。ターミナルで次を実行すると、gcc の現在のバージョンが表示されます。

$ g++ -v

于 2012-10-22T21:05:25.137 に答える