Closed4
Nim (Nimble) で依存パッケージをプロジェクトごとに分ける
ディレクトリ構成
tree
#> .
#> ├── nimble_test.nimble
#> ├── src
#> │ ├── nimble_test
#> │ │ └── submodule.nim
#> │ └── nimble_test.nim
#> └── tests
#> ├── config.nims
#> └── test1.nim
準備
./nimbledeps
にパッケージリストをダウンロード
local deps modeに切り替え, -l
は--localdeps
でも良い。
nimble refresh -l
#> Warning: Using project local deps mode
#> Downloading Official package list
#> Success Package list downloaded.
実行後のディレクトリ構成
tree
#> .
#> ├── nimble_test.nimble
#> ├── nimbledeps
#> │ ├── packages_official.json
#> │ ├── packages_temp.json
#> │ └── pkgs
#> ├── src
#> │ ├── nimble_test
#> │ │ └── submodule.nim
#> │ └── nimble_test.nim
#> └── tests
#> ├── config.nims
#> └── test1.nim
nim.cfg
にパッケージのディレクトリを記載する
このままではVS Codeなどのエディタの拡張機能がcannot open file: hoge
等とエラーを吐くので, ./nim.cfg
を作成しそこにパッケージのディレクトリを記載する。
nim.cfg
nimblePath = "nimbledeps/pkgs"
記載後のディレクトリ構成
tree
#> .
#> ├── nim.cfg
#> ├── nimble_test.nimble
#> ├── nimbledeps
#> │ ├── packages_official.json
#> │ ├── packages_temp.json
#> │ └── pkgs
#> ├── src
#> │ ├── nimble_test
#> │ │ └── submodule.nim
#> │ └── nimble_test.nim
#> └── tests
#> ├── config.nims
#> └── test1.nim
パッケージのインストール
パッケージは./nimbledeps/pkgs
にインストールされる。
任意のパッケージ (今回はcligen) をインストールしたい場合
nimble install cligen
#> Warning: Using project local deps mode
#> Downloading https://github.com/c-blake/cligen.git using git
#> Verifying dependencies for cligen@1.6.1
#> Installing cligen@1.6.1
#> Success: cligen installed successfully.
nimble_test.nimble
に記載されている依存パッケージをインストールしたい場合
nimble install -dy
#> Warning: Using project local deps mode
#> Verifying dependencies for nimble_test@0.1.0
#> … (略)
このスクラップは2023/04/30にクローズされました