3

ネットワーク内のデータ フローに関する R パッケージを作成しています。速度を上げるために、一部のコードは C++ で記述され、独自のグラフ アルゴリズムの実装が使用されています。Boost Graph Library を使用するようにコードを書き直したいと思います。

ブーストを検出するコンパイラ/リンカー オプションを設定するには、Makevars ファイルに何を入力する必要がありますか? 申し訳ありませんが、私は Make があまり得意ではありません。

Linux環境で作業しています

はい、RBGL を調べましたが、そのパッケージに makefile が見つかりませんでした

重要な場合は、Rcpp を使用して R および C++ コードをインターフェイスしています

4

1 に答える 1

4

それほど難しくありません。デフォルトでは、すべての Rcpp パッケージにはデフォルトsrc/Makevarsが含まれています。

## Use the R_HOME indirection to support installations of multiple R version
PKG_LIBS = `$(R_HOME)/bin/Rscript -e "Rcpp:::LdFlags()"`

Rcpp 自体のライブラリは、R に問い合わせることで動的に検出されます。これを展開して追加するだけです。

-lboost_graph

(および/または、おそらくパラレルまたは mt バリアント)。それらが通常とは異なる場所に設置されている場合は、-L...フラグも追加してください。ヘッダーの場所の PKG_CFLAGS のディト。

それはそれについてです。Writing R ExtensionsR パッケージのビルドの詳細については、マニュアルを参照してください。

于 2012-03-24T00:28:53.217 に答える