今更感がありますが、intel edisonを手に入れました。
Windowsでedison用のバイナリをビルドしようと思ったのですが、
クロスコンパイルすること自体ほぼ初めてだったため、だいぶ遠回りしてしまったので
もしかしたら、同じような人もいるかな?と思ったので、ここに残しておきたいと思います。
SDKをインストールする
-
Edison - Software DownloadsからEdison SDK Windows 32をDLします。
64bitの方でも大丈夫だと思いますが今回は32bitの方を使用しました。 -
DLしたzipファイル、中のbz2アーカイブを展開し、適当なディレクトリに配置します。
ディレクトリはなるべく浅い方がいいと思います。
今回はC:/Tools/edison
以下にsysroot/
とその他ファイルを配置しました。 -
pathを通す
C:/Tools/edison/sysroots/i686-pokysdk-mingw32/usr/bin/i586-poky-linux
にpathを通します。
nyagosを使っていれば~/.nyagosに
addpath('C:/Tools/edison/sysroots/i686-pokysdk-mingw32/usr/bin/i586-poky-linux')
と書くだけでいいで便利です。
コンパイルしてみる
僕はさんざんググりまくり&試行錯誤しまくりだったのですが、
結局--sysroot
オプションさえ付ければOKでした。
クロスコンパイルやる人にとっては常識なんでしょうね、
ググってもなかなか--sysroot
のキーワードに辿りつけませんでした。。。
さて、例によってhelloworld.c
を準備してください(もちろん内容込で)。
あとは
i586-poky-linux-gcc --sysroot=C:/Tools/edison/sysroots/core2-32-poky-linux helloworld.c -o helloworld
とコマンドを打てばedison用のバイナリが出来上がります!
scpかなんかで転送して実行できれば成功です。
あとがき
実はedisonが手元に届いたのはついさっきですw
うずうずして、実機が届く前からクロスコンパイル方法を模索していました。
これからちょっとずつ触ってみようと思います。