Jetson TK1 で評価・開発するための開発環境構築 Step by Step を画像入りで紹介します。
一度分かってしまえば難しいものではないと思いますが、最新の JetPack については情報が少ない、日本語だとさらに少ないという状況です。
やってみて相当ハマりました。ということで、これから始める人、Linux や Jetson TK1 に不慣れな人の参考になれば。
悩みながらの試行なので、実は他に適切な手順があるかもしれません。
ご存じの方はぜひ(こっそり /w)教えてください。この記事の内容に随時反映します。
なお私は運よく(NVIDIA 社内で開封済みの)TK1 をいただいたので、購入直後の状態ではありません。このため一部の手順があるかもしれませんし、少なくとも一つは違いがある(らしい)ことが分かっています。
■ 必要なもの
TK1 側
- HDMI ディスプレイ ・・・お好きなものをどうぞ。
- USB キーボード ・・・お好きなものをどうぞ。
- USB マウス ・・・有線でもUSBドングル付きの無線マウスでも、お好きなもので。Bluetooth マウスは当然 NG
- USB 3.0 ハブ ・・・ 2.0 のハブでも行けそうな気はしますが試してません。
- 有線 LAN 環境 ・・・Wifi については別途
ホスト PC 側
- PC ・・・仮想マシンでも問題ありません。ただし TK1 を USB 接続する必要があるため、VirtualBox とか VMWare とかのように USB を使えるもの。残念ながら Hyper-V は NG。ちなみに私の環境は Windows 10 x64 上の VirtualBox (メモリ 4GB) 。
- Ubuntu 14.04 LTS ・・・日本語版でも可。「新しいバージョンがいいだろう」と 15.11 などを入れると JetPack (Jetson の SDK) のインストーラーに怒られるので、必ず 14.04 を使います。
その他
- NVIDIA 開発者サイトの登録 ・・・JetPack などのダウンロードには開発者サイトでの登録必須。
- Jetson Development Pack (JetPack) ・・・いわゆる SDK。2015年1月時点では 2.0 が最新。TX1 用の SDK と TK1 用の DK とが同梱されているので、“Jetson Development Pack (JetPack) 2.0 ” をダウンロードしてください。TK1 用と書かれているからと 1.1 などをダウンロードする必要はありません。
■ インストール手順
- (購入後に一度だけ)TK1 で install.sh を実行
購入後に一度だけ TK1 にディスプレイ、キーボードを接続して電源を入れ、
sudo .installer.sh
を実行(するらしいです。私は未経験の手順) - JetPack のダウンロード~インストーラー起動
念のため、
”chmod +x JetPack-<バージョン>.run” で属性変更、”./JetPack-<バージョン>.run” でインストーラー起動
ですね。
ウィザードに沿ってインストールを進めれば OK。
- インストールパッケージの選択
私はひとまず Full Package で。ターゲットはもちろん “Jetson TK1”。
- インストールの進行
ここまでは(時間はかかるものの)順調に進んでいきます。
- TK1 への転送開始
TK1 で “ifconfig” などで IP アドレスを確認、ホスト側で実行中のインストーラーで指定します。
と、ここから TK1 への転送開始が始まる・・・はずですが、どうも怪しい表示。
あれだけがんばってインストーラーが動いたわりには転送対象が 1コンポーネントって大丈夫?
- 処理の失敗
処理が進むと、scp コマンドで失敗します。失敗の原因を探り出すと先に進めなくなります。
ここは Ctrl + C を押し、ウィザードではキャンセルして、一旦インストールを終了します。
このあたりはインストーラーがもう少し分かりやすいといいですね。
※ここの手順がうまく行くようであれば、そのままインストーラーを続けていいと思います。私の手元では何度やってもここで失敗します。
- もう一度インストーラーを実行
コンポーネントのダウンロード、ビルド等は前の手順で成功しているので、転送準備まではサクサク進みます。
見覚えのあるような画面ですが、今回はライブラリ群とサンプルのみが準備完了として表示されます。(先ほど転送失敗した部分)
- TK1 に転送
- TK1 のシャットダウン
Linux for Tegra (=L4T) を TK1 にコピーします。OS のイメージの転送なので、LAN 経由ではなく USB 接続で行います。ここからの手順は、インストーラーが起動するターミナルに表示されます。素直に従います。
まず TK1 をシャットダウンします。 - ホストと USB 接続
TK1 の Micro USB ポートとホスト PC とを USB ケーブルで接続します。 - TK1 の電源オン
TK1 の Power スイッチを押して電源を入れます。 - リカバリーモード
TK1 の Recovery スイッチを押したままで Reset スイッチを押します。その後、Reset スイッチを離して最低3秒ほど(インストーラーの説明では 2秒と言っているので余裕を持って 3秒)経ってから Recovery スイッチを離します。
これでリカバリーモードに入り、ホスト PC からは USBデバイスとして見えるようになります。 - (ホストを仮想マシンで実行している場合)TK1 を USB デバイスとして有効化
VirtualBox の場合は以下のように。
もし “NVIDIA Corp. APX” が見つからなければ、リカバリモードに入っていません。TK1 でもう一度 Recovery / Reset スイッチの操作をしてみます。
- ホストのインストーラーで Enter キー
インストーラーが表示しているターミナルで Enter キーを押します。OS の転送が始まります。 - TK1 の自動リブート
転送が進むと、あるところで TK1 が自動的にリブートされます。
その後、インストーラーには TK1 の IP アドレスを指定するよう指示が出ます。
OS の転送、リブートが済んだので、残りの転送が始まります。途中で Enter キーが要求されるので、時々マシンを覗いてみてください。
- TK1 でサンプルアプリ動作
転送が済むと、TK1 側でサンプルアプリが動作します。
- ダウンロードファイルの削除
インストール完了です。最後にインストーラーにダウンロードファイルを削除するかを聞かれます。
不要だったら削除、「これからもまたインストールするかも」というのであれば残しておいてもいいかも。お好きなように。
以上で、JetPack のインストールは完了です。おつかれさまでした。(私も疲れた w)
ハマりどころとしては、最初のインストールで権限エラーになってしまうところ。
もう一つは常に発生するわけではないですが、OS イメージの転送に失敗してしまうと(原因不明)、以後はインストーラーではどうにもならなくなるところ。これについては次の記事で。
「Jetson TK1 の開発環境構築 Step by Step」への3件のフィードバック