2018年2月13日火曜日

Rustのcrateのリポジトリにあるexampleを実行する方法


背景

あるプロジェクトのexampleが手元で実行できなかったのでexampleを修正するPRを出したら「最近の修正が含まれているバージョンなら動くよ」と言われました。
それまでexampleプログラムの動かし方を知りませんでしたが、調べてみたら実行方法が分かりました。

crateのexampleプログラムの実行方法を知りたい人がある程度要ると思うので、情報を共有します。

方法

下記の流れで実行できます。
  1. exampleがあるリポジトリをダウンロード
  2. exampleを動かせるCargo.tomlファイルのあるディレクトリに移動
  3. 下記のように実行したいファイル名を指定して、cargoコマンドを実行
    cargo run --example [ファイル名]

OpenCLのバインディングをしているプロジェクトの場合は、下記のような流れでocl/ocl/examples/trivial.rsを実行できました。
git clone https://github.com/cogciprocate/ocl
cd ocl/ocl
cargo run --example trivial

ちなみに、このオプションはcargo runのhelpで知りました。
$cargo run --help
..
Options:
..
    --example NAME               Name of the example target to run
..

困ったときは --help の情報を見てみると良いかもしれません。

まとめ

リポジトリのexampleを実行できました。
これによって「使いたいcrateのexampleが動かない…」というときに、依存しているcrateが合っていないのか、バグなのか、切り分けられます。

何かの参考になれば嬉しいです。

0 件のコメント :