2012-12-20 21 views
6

サイズが拡大し始めるRパッケージを作成していますので、フォルダpkg/R /と(特に)pkg/src /。Rパッケージ:pkg/Rとpkg/srcフォルダのカスタムファイル/ディレクトリ構造を使用

たとえば、あるタイプのアルゴリズムの2つのファミリと、タイプBのいくつかの関数とメインエントリポイントがあるとしましょう。 ...

  • algorithms2/

      • タイプA/
        • algorithms1/
          • algo11.ext:理想的にはR /またはSRC /フォルダは次のように整理されるだろう
          • algo21.ext
          • ...
      • タイプB/
        • function1.ext
        • ... {Rで "EXT" と
      • main.ext

      、cpp、c、f、...}と、同じ名前の2つのファイルがあります。

      それは可能ですか?はいの場合、どうすればいいですか?

      ありがとうございます!


      [2012-12-31] EDIT:アイデアはいくつかのスクリプトを記述するだろう - おそらく他のRパッケージ内 - (UN)にテストや拡散のための構造化されたパッケージを平ら。しかし、おそらくもっと良い解決策があるので、私は少し待つでしょう。

  • +0

    可能性がありますか? 'src /'にカスタムMakefileを使うことができるようになりました。 Rエクステンションのマニュアルをまだ調べていませんか?私は 'R /'の再編がより難しくなると思う。 –

    +0

    src /でカスタムMakefileを使用しようとしましたが、コマンドラインでうまく動作しましたが、R CMD INSTALL( "myfile.oに必要なターゲット 'myfolder/myfile.c'をビルドするルールなし)を使用すると失敗しました。私はサブディレクトリ組織http://cran.r-project.org/doc/manuals/R-exts.html#Package-subdirectoriesについてこの段落を見つけただけで、内部で何か役立つものは見当たりませんでした。私もここで試してみました。 – BenjaminAuder

    答えて

    1

    「Writing R extensions」マニュアルindicates hereとして、pkg/src下のMakevarsファイルは、C/C++/Fortranコード用のネストされたサブフォルダを持つことができます。 (例えば、RSienaパッケージを参照)。

    しかし、pkg/Rのカスタム構造に関するものは見つかりませんでした。だから、私は、次のタスクを実行する(改善が必要であるが、使用可能な、)少しパッケージを書いた:

    • ロード/ PKG/R
    • 起動R及び/又はC部の下に(潜在的に)ネストされたフォルダを有するパッケージをアンロードその上でテスト[交換する基本的な枠組み、(例えばRUNITとチェック)]
    • エクスポートパッケージがCRAN-互換性があるために(Makevarsファイルを生成し、Rコードを平ら)

    それならば、私はそれをここにリンクします発行可能な状態になります。 (私はそれを電子メールで送ることができる瞬間です)。

    +0

    あなたはパッケージを進めましたか? –

    関連する問題