GDBが用意されていなかったので
最近異動(左遷??)があって全然androidじゃなくなって、arm系の組み込みlinux関連の仕事になった。異動先では誰もgdbを使っていない上に用意もされていなかったので、target board上で動くgdbを自前でbuildしようと思い立った。上手く行ったので、忘れんうちにメモに残す。
Crosscompiling GDB 7.5 for ARM | Alan C. Assis
target用のtermcapをbuildして、toolchainに含めればOKらしい。 6.8でも参考になりました。
wget ftp://ftp.gnu.org/pub/pub/gnu/termcap/termcap-1.3.1.tar.gz -O - | tar xzf - cd termcap-1.3.1/ CC=arm-hoge-linux-gnueabi-gcc ARCH=arm ./configure --target=arm-hoge-linux-gnueabi --build=x86_64-linux --host=arm-hoge-linux-gnueabi --prefix=${toolchain_path} make && make install cd .. git clone git://sourceware.org/git/binutils-gdb.git cd binutils-gdb git checkout gdb_6_8-2008-03-27-release -b 6.8 CC=arm-hoge-linux-gnueabi-gcc ARCH=arm ./configure --target=arm-hoge-linux-gnueabi --build=x86_64-linux --host=arm-hoge-linux-gnueabi make
printf debuggingが辛い年齢になりました、、、
これはNDKの罠?
Androidプログラミング-NDK-共有ライブラリ(libpng)を作る - tueda
(非常に重要な注意)2011年3月現在、APP_MODULESはオプションで定義しなくても動作に問題ないはずだが、なぜかBUILD_STATIC_LIBRARYに限りこのAPP_MODULESを定義しないとコンパイルしてくれない。忘れると悲惨。
Android NDK | Android Developers
私は8eを使いましたが、この罠?はそのままでした。
コマンド履歴の前方検索
常々ctrl-r
で戻りすぎた場合の対処法を知りたいと思っていたが、検索したらすぐ分かった。
bash のコマンド履歴を Ctrl+r で遡りすぎた場合の対処法 - coblog
stty stop undef
これでctrl-s
が前方検索として機能する。やたーーー!!!
時空探偵
こんにちは、deusx'sキッチンの時間です。
今日は時空探偵ddのメモ。
とあるバイナリからオフセット指定でコピーしないといけないシチュエーションがあり、man見ながら5分弱試行錯誤した。
dd if=src of=dst bs=1 skip=offset count=size
とあるバイナリがヘッダ+固定サイズ*n
というフォーマットになっていて、つまりはヘッダ+固定サイズ*m
をオフセットにしたかったというわけ。