2012-03-19 11 views
4

私はWindows XPプラットフォーム上のR 2.14.2でRcppを使用しようとしていました。私が知る限り、Rcppを動作させるために推奨されるすべての手順を実行しました。RcppをWindows XPプラットフォームでRで動作させるにはどうすればよいですか?

  1. RをC:\ R \ R-2.14.2というディレクトリにインストールしました。
  2. 最新バージョンのRtoolsをC:\ R \ Rtoolsディレクトリにインストールしました。 \ R \ Rtools \ GCC-4.6.3 \ binに:;:

C:C \ R \ Rtools \ビンI(このまったく同じ順序で)次のように環境パスを設定

  • ;
    C:\ R \ R-2.14.2 \ビンの\ I386; C:\ WINDOWS; C:このすべてにもかかわらず、\ WINDOWS \ system32に

  • 、IがRのテスト例とを実行しようとしたときRcppが動作するかどうかを確認してください。エラーメッセージが表示されます。

    ​​

    ここでは、上記のRコードを実行しようとした結果、Rによって生成されるかなり長いエラーメッセージを示します。私が間違っていることと、Rcppが動作することを確認するために何が必要なのか、誰に教えてもらえますか?

    cygwin warning: 
    MS-DOS style path detected: C:/R/R-214~1.2/etc/i386/Makeconf 
    Preferred POSIX equivalent is: /cygdrive/c/R/R-214~1.2/etc/i386/Makeconf 
    CYGWIN environment variable option "nodosfilewarning" turns off this warning. 
    Consult the user's guide for more details about POSIX paths: 
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames 
    g++.exe: error: C:/Documents: No such file or directory 
    g++.exe: error: and: No such file or directory 
    g++.exe: error: Settings/dv6110ca/My: No such file or directory 
    g++.exe: error: Documents/R/win-library/2.14/Rcpp/lib/i386/libRcpp.a: 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: 
    4: #include <Rcpp.h> 
    5: 
    6: 
    7: #ifndef BEGIN_RCPP 
    8: #define BEGIN_RCPP 
    9: #endif 
    10: 
    11: #ifndef END_RCPP 
    12: #define END_RCPP 
    13: #endif 
    14: 
    15: using namespace Rcpp; 
    16: 
    17: 
    18: // user includes 
    19: 
    20: 
    21: // declarations 
    22: extern "C" { 
    23: SEXP file684203c3ec2(SEXP x) ; 
    24: } 
    25: 
    26: // definition 
    27: 
    28: SEXP file684203c3ec2(SEXP x){ 
    29: BEGIN_RCPP 
    30: 
    31: NumericVector xx(x); 
    32: return wrap(std::accumulate(xx.begin(), xx.end(), 0.0)); 
    33: END_RCPP 
    34: } 
    35: 
    36: 
    Error in compileCode(f, code, language = language, verbose = verbose) : 
    Compilation ERROR, function(s)/method(s) not created! cygwin warning: 
    MS-DOS style path detected: C:/R/R-214~1.2/etc/i386/Makeconf 
    Preferred POSIX equivalent is: /cygdrive/c/R/R-214~1.2/etc/i386/Makeconf 
    CYGWIN environment variable option "nodosfilewarning" turns off this warning. 
    Consult the user's guide for more details about POSIX paths: 
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames 
    g++.exe: error: C:/Documents: No such file or directory 
    g++.exe: error: and: No such file or directory 
    g++.exe: error: Settings/dv6110ca/My: No such file or directory 
    g++.exe: error: Documents/R/win-library/2.14/Rcpp/lib/i386/libRcpp.a: No such file or 
    directory 
    

    答えて

    4

    パス名にスペースを含むディレクトリにRをインストールしないを行います。その勧告は、私が思い出したように、 'R for Windows FAQ'にあります。

    自分の個人設定は、バージョン管理されたデフォルトパスではなく、常にc:\opt\R-current\です。

    2

    私はRcppを設定するのと同じ問題を抱えていました。 Rをアンインストールした後、Rcppと互換性のあるセットアップを作成するために再インストールしたようです。これを行うと、Rは以前のインストールと同じフォルダにパッケージをインストールします。 Rをアンインストールした後、パッケージを保持するフォルダを削除してください。私のWindows 7マシンでは、このフォルダはC:/Users/Chandler/Rにありました。このフォルダを削除します。 Rを再インストールします。新しいパッケージが新しいRフォルダにインストールされていることを確認します。 C:\R\R-2.14.2\library。これは、上記のDirkが述べたフォルダの場所のスペースに関する問題を解消するはずです。

    また、「Rのインストールと管理」マニュアルDの例と同じパスを使用してください。2.14.2の代わりにRの最新バージョンを使用している場合は、このマニュアルに従うのが最も簡単です

    注:Rcppが動作しても、cygwinの警告が表示されます。

    +2

    文 'CYGWIN環境変数オプション" nodosfilewarning "がこの警告をオフにすることがあります。 '(OPによって投稿されたメッセージの真中にある)は、警告をオフにするのに役立ちます。 –

    3

    エラーはあなたが投稿されたメッセージの最後の5行で説明されています。中に

    g++.exe: error: C:/Documents: No such file or directory 
    g++.exe: error: and: No such file or directory 
    g++.exe: error: Settings/dv6110ca/My: No such file or directory 
    g++.exe: error: Documents/R/win-library/2.14/Rcpp/lib/i386/libRcpp.a: No such file or 
    directory 
    

    g++.exelibRcpp.aと呼ばれるファイルを探していますが、ファイルは、その名前にスペースを含むフォルダ内にある、特に、

    C:/Documents and Settings/dv6110ca/My Documents/R/win-library/2.14/Rcpp/lib/i386/libRcpp.a 
    

    やフォルダへのパスはandSettingsDocumentsand間の3つのスペースを(含まれ、間:お使いのコンピュータのファイルがこのフォルダにありますMyおよびDocuments)。ある意味では、コンパイラ/リンカーはそのスペースを気に入らない。

    関連する問題