RaspberryPiの開発環境の構築
RaspberryPi3の開発を始めるにあたり,ひとまず以前A+の開発に使っていたときの環境をベースに環境構築.
基本的に母艦のWindowsベースで開発するので基本操作はVNCかSSH経由.
SSHに関してはraspi-configからSSHをenableにするだけで準備は完了するので楽ちん.
の記事を参考に導入していく.VNCサーバは自動起動させておきたいので
Raspberry Piで遊ぼう [No.5:VNC接続をしよう]:アシマネくんのほんわか日記:So-netブログ
に従って設定.
あと,VNC接続中にクリップボードの内容を同期できるautocutselは非常に便利なので一緒に導入
raspbian - TightVNC copy/paste between local OS and Raspberry Pi? - Raspberry Pi Stack Exchange
ホスト名参照
ラズパイと接続するときにいちいちIPアドレスを調べてられないのでホスト名による参照を導入.
Raspberry Piにホスト名の設定をしたメモ – 1ft-seabass.jp.MEMO
Windows側の準備としてはBonjourを導入する必要があったのだが,Windows10からはデフォルトでホスト名参照できるらしい.なおどちらにせよファイアウォールの登録が必要.受信と送信のどちらにも必要っぽい.
登録の手順
コントロールパネル→システムとセキリュティ→Windowsファイアウォールから詳細設定をクリック.受信or送信の規則→新しい規則 を選び,
規則の種類:ポート
プロトコルおよびポート:UDP,特定のリモートポート:5353
後は適用範囲や名前を適当に決めて完了.
以降ホスト名.localでアクセスできるようになる.
フォルダ共有
VNCベースで開発を進めていると共有フォルダがほしくなることが多いので,
プログラムの開発についてはNetBeansというIDEを使用.NetBeansはWindows上で開発しながらコンパイルのみラズパイ上で行うという器用なことができる.
https://netbeans.org/downloads/
から対象のインストーラを入手してインストール.
以降ラズパイとの接続設定.C/C++の例だがたぶん他も同じ.これらはネットワーク上にラズパイが繋がっていることを確認してから行う.
1.ひとまず普通にプロジェクトを作成
2.ツール→オプション→C/C++のビルド・ツールタブをクリック
3.右上の編集ボタンをクリックしてRaspberryPiの情報を追加
4.プロジェクトのプロパティのビルドの項でビルド・ホストを選択
これでラズパイ上でのコンパイルが可能に.
なおデフォルト設定でコンパイルを行った場合,実行ファイルは
~/.netbeans/remote/ホスト名/ユーザー名-Windows-x86_64/Windows上でのプロジェクトのパス/dist/Debug/GNU-Linux-x86
というめちゃくちゃ深いところに作られる.プロジェクトのプロパティのリンカの項目から,出力ディレクトリを
/home/pi/ファイル名
のように指定すれば変更できるが,IDE上での実行やデバッグはできなくなる?
実行やデバッグのパスを合わせればできそうなものだけど,どうもうまくいかないのでSSHやVNCで直接起動している.いずれなんとかしたい.
今のところの開発環境はこんな感じ.また便利なものを見つけたら紹介する予定.