windowsでのraspipicoの開発(続)
汎用的なプロジェクト構成を構築
下記の記事で行った環境を使って、より汎用的なプロジェクト構成を構築する。
pico-sdkをサブモジュールとして追加し、クローンする。
一つのプロジェクトで完結して構成するため、よりプロジェクト全体を理解しやすくなる。
git submoduleの説明は下記の記事を参考にした。
端的に言うと下記の通り。
外部の git リポジトリを、自分の git リポジトリのサブディレクトリとして登録し、特定の commit を参照する仕組みです。
また、ビルド結果は「out of source ビルド」の考えをもとにbinフォルダに生成する。
生成ファルダとソースフォルダを分離することで、管理しやすくする。
下記がその作成したリポジトリとなる。
このリポジトリには、サブモジュールが含まれているため、クローンするには、下記のコマンドを使用する。
git clone --recursive https://github.com/ikimon-dev/ledblink.git
もし、** --recursive **をつけ忘れてクローンした場合、下記のリンクを参考にgit submodule update --init --recursive
で
サブモジュールもクローン出来る。
クローンすると、下記の通りとなる。
~/src/repo/ledblink$ tree -L 3
.
├── CMakeLists.txt
├── src
│ └── ledblink
│ ├── CMakeLists.txt
│ └── main.c
└── third_party
└── pico-sdk
├── CMakeLists.txt
├── CONTRIBUTING.md
├── LICENSE.TXT
├── README.md
├── cmake
├── docs
├── external
├── lib
├── pico_sdk_init.cmake
├── pico_sdk_version.cmake
├── src
├── test
└── tools
ビルドを行うと、buildフォルダが作られ、~/build/src/pico-display/pico_display.elf
が生成される。