OpenWrtのtoolchainをUbuntuの新しいので作る時の注意

Linino Oneを仕事でいじっている。

Linino Oneは安物WiFiルータに使われているSoC(AR9331)を使ったもので、OpenWrtが動いている。

OpenWrtをいじるには、それ用のtoolchainが必要なのだけど、これをUbuntuの比較的最近のもの(14.04とか)でコンパイルするとうまく行かない。原因は、gccが5系になっているから。

これを回避するには、

/linino_distro/build_dir/toolchain-mips_r2_gcc-4.6-linaro_uClibc-0.9.33.2/gcc-linaro-4.6-2012.02/gcc/cp/cfns.h

に、

https://dev.openwrt.org/browser/trunk/toolchain/gcc/patches/4.6-linaro/999-gcc5-gcc_cp_cfns_h.patch?rev=46355

のパッチを当てる。

同じissueで他のパッチもあるのだけど、核心はこれだけ。

もうgccが5系になって久しいんだから、いい加減に対応して欲しいところなんだが。

STM32VLDiscovoryでOpenOCDを使うメモ

ST-Linkそのままでも一応はいろいろ出来るのだけど、ツールがプロプラだったりして面倒臭いことが多いので、OpenOCDを使う決心をする。WindowsでIARのツールとかでやるんだったら、そういったことをする必要はないのだけど、「不自由なソフトウェア」はいろいろと不自由だ。

「別に割り切ればいいじゃん」的なことも思わないではないのだが、IARの統合環境とか使ってても、幸せになれる気がしない。そこで、環境をOpenOCDを使ったものにする。
続きを読む