記録」カテゴリーアーカイブ

[玄箱]openwince/JTAGコンパイル

シリアルコンソールでも何も表示されない黒箱とかした無印玄箱(初代)
まぁ、シリアルコンソールも自作なのでこれがちゃんと動いているのかすらわからないけれど
電源投入後、一分後ぐらいに最初4回、以降5回赤いLEDが点滅している。
赤いLEDはDIAG LEDで点滅5回は「FlashROM異常時」という意味らしい。(マニュアル参照)
シリアルコンソールで何も表示されないのはbootcodeも破壊してしまったのかも。
どのみち打つ手はJTAGしかないので挑戦してみる。

まずはJTAGが利用できる環境の作成
WindowsにCygwinを入れたくないのでBackTrack4 R1に構築してみる。

まずはCVSからソースの取得


root@bt:~# mkdir ~/cvs-work
root@bt:~# mkdir ~/cvs-work/JTAGTOOL
root@bt:~# cd ~/cvs-work/JTAGTOOL/
root@bt:~/cvs-work/JTAGTOOL# cvs -d:pserver:anonymous@openwince.cvs.sourceforge.net:/cvsroot/openwince login
Logging in to :pserver:anonymous@cvs.sourceforge.net:2401/cvsroot/openwince
CVS password: [空リターン]
root@bt:~/cvs-work/JTAGTOOL# cvs -z3 -d:pserver:anonymous@openwince.cvs.sourceforge.net:/cvsroot/openwince co -P include jtag
cvs checkout: Updating include
U include/.cvsignore
U include/AUTHORS
U include/COPYING
 (中略)
U website/iPAQ-3600/images/A.jpg
U website/iPAQ-3600/images/B.jpg
U website/iPAQ-3600/images/interface.png

無事取得完了。
まずは、includeをコンパイルしてみる


root@bt:~/cvs-work/JTAGTOOL# cd include
root@bt:~/cvs-work/JTAGTOOL/include# ./autogen.sh
./autogen.sh: line 36: autoreconf: command not found

autoreconf failed.

おや、コマンドがみつからないと怒られたので apt で autoconf をインストール。


root@bt:~/cvs-work/JTAGTOOL/include# aptitude install autoconf
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
The following NEW packages will be installed:
  autoconf automake{a} autotools-dev{a}
0 packages upgraded, 3 newly installed, 0 to remove and 9 not upgraded.
Need to get 1030kB of archives. After unpacking 3600kB will be used.
Do you want to continue? [Y/n/?] y
Writing extended state information... Done
Get:1 http://archive.offensive-security.com pwnsauce/main autoconf 2.61-7ubuntu1 [449kB]
Get:2 http://archive.offensive-security.com pwnsauce/main autotools-dev 20080123.1 [62.6kB]
Get:3 http://archive.offensive-security.com pwnsauce/main automake 1:1.10.1-3 [519kB]
Fetched 1030kB in 7s (141kB/s)
Selecting previously deselected package autoconf.
(Reading database ... 249428 files and directories currently installed.)
Unpacking autoconf (from .../autoconf_2.61-7ubuntu1_all.deb) ...
Selecting previously deselected package autotools-dev.
Unpacking autotools-dev (from .../autotools-dev_20080123.1_all.deb) ...
Selecting previously deselected package automake.
Unpacking automake (from .../automake_1%3a1.10.1-3_all.deb) ...
Processing triggers for man-db ...
Processing triggers for doc-base ...
Processing 52 changed, 1 added doc-base file(s)...
Registering documents with scrollkeeper...
Setting up autoconf (2.61-7ubuntu1) ...

Setting up autotools-dev (20080123.1) ...
Setting up automake (1:1.10.1-3) ...

Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Writing extended state information... Done

これで再度 ./autogen.sh を実行してみる。


root@bt:~/cvs-work/JTAGTOOL/include# ./autogen.sh
Can't exec "libtoolize": No such file or directory at /usr/bin/autoreconf line 186.
Use of uninitialized value $libtoolize in pattern match (m//) at /usr/bin/autoreconf line 186.
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: running: /usr/bin/autoconf
autoreconf: configure.ac: not using Autoheader
autoreconf: running: /usr/bin/automake --foreign --add-missing --no-force
configure.ac:41: installing `tools/install-sh'
configure.ac:41: installing `tools/missing'
autoreconf: Leaving directory `.'

autoreconf done.

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking for hwbench installation... no
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... none
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for stdint.h... (cached) yes
configure: creating ./config.status
config.status: creating Makefile
config.status: executing depfiles commands

無事完了。続いて ./configure を実行。


root@bt:~/cvs-work/JTAGTOOL/include# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for hwbench installation... no
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... none
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for stdint.h... (cached) yes
configure: creating ./config.status
config.status: creating Makefile
config.status: executing depfiles commands

順調に完了。そのまま make install 。


root@bt:~/cvs-work/JTAGTOOL/include# make install
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/include'
make[1]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/include/openwince" || /bin/mkdir -p "/usr/local/include/openwince"
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'common.h' '/usr/local/include/openwince/common.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'openwince.h' '/usr/local/include/openwince/openwince.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'cexcept.h' '/usr/local/include/openwince/cexcept.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/arm.h' '/usr/local/include/openwince/arm/arm.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/gpclk.h' '/usr/local/include/openwince/arm/sa11x0/gpclk.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/gpio.h' '/usr/local/include/openwince/arm/sa11x0/gpio.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/hssp.h' '/usr/local/include/openwince/arm/sa11x0/hssp.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/ic.h' '/usr/local/include/openwince/arm/sa11x0/ic.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/lcd.h' '/usr/local/include/openwince/arm/sa11x0/lcd.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/mc.h' '/usr/local/include/openwince/arm/sa11x0/mc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/mcp.h' '/usr/local/include/openwince/arm/sa11x0/mcp.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/ost.h' '/usr/local/include/openwince/arm/sa11x0/ost.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/pm.h' '/usr/local/include/openwince/arm/sa11x0/pm.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/ppc.h' '/usr/local/include/openwince/arm/sa11x0/ppc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/rc.h' '/usr/local/include/openwince/arm/sa11x0/rc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/rtc.h' '/usr/local/include/openwince/arm/sa11x0/rtc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/ssp.h' '/usr/local/include/openwince/arm/sa11x0/ssp.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/uart.h' '/usr/local/include/openwince/arm/sa11x0/uart.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/sa11x0/udc.h' '/usr/local/include/openwince/arm/sa11x0/udc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/ac97.h' '/usr/local/include/openwince/arm/pxa2x0/ac97.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/cm.h' '/usr/local/include/openwince/arm/pxa2x0/cm.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/dma.h' '/usr/local/include/openwince/arm/pxa2x0/dma.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/gpio.h' '/usr/local/include/openwince/arm/pxa2x0/gpio.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/i2c.h' '/usr/local/include/openwince/arm/pxa2x0/i2c.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/i2s.h' '/usr/local/include/openwince/arm/pxa2x0/i2s.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/ic.h' '/usr/local/include/openwince/arm/pxa2x0/ic.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/icp.h' '/usr/local/include/openwince/arm/pxa2x0/icp.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/lcd.h' '/usr/local/include/openwince/arm/pxa2x0/lcd.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/mc.h' '/usr/local/include/openwince/arm/pxa2x0/mc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/mmc.h' '/usr/local/include/openwince/arm/pxa2x0/mmc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/ost.h' '/usr/local/include/openwince/arm/pxa2x0/ost.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/pmrc.h' '/usr/local/include/openwince/arm/pxa2x0/pmrc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/pwm.h' '/usr/local/include/openwince/arm/pxa2x0/pwm.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/rtc.h' '/usr/local/include/openwince/arm/pxa2x0/rtc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/ssp.h' '/usr/local/include/openwince/arm/pxa2x0/ssp.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/uart.h' '/usr/local/include/openwince/arm/pxa2x0/uart.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'arm/pxa2x0/udc.h' '/usr/local/include/openwince/arm/pxa2x0/udc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'brux/bus.h' '/usr/local/include/openwince/brux/bus.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'brux/cfi.h' '/usr/local/include/openwince/brux/cfi.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'brux/cmd.h' '/usr/local/include/openwince/brux/cmd.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'brux/flash.h' '/usr/local/include/openwince/brux/flash.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/codec/ac97.h' '/usr/local/include/openwince/device/codec/ac97.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/codec/ucb1400.h' '/usr/local/include/openwince/device/codec/ucb1400.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/flash/28fxxxj.h' '/usr/local/include/openwince/device/flash/28fxxxj.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/flash/28fxxxk.h' '/usr/local/include/openwince/device/flash/28fxxxk.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/flash/cfi.h' '/usr/local/include/openwince/device/flash/cfi.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/flash/intel.h' '/usr/local/include/openwince/device/flash/intel.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/other/hd64461/afe.h' '/usr/local/include/openwince/device/other/hd64461/afe.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/other/hd64461/gpio.h' '/usr/local/include/openwince/device/other/hd64461/gpio.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/other/hd64461/intc.h' '/usr/local/include/openwince/device/other/hd64461/intc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/other/hd64461/lcdc.h' '/usr/local/include/openwince/device/other/hd64461/lcdc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/other/hd64461/pcc.h' '/usr/local/include/openwince/device/other/hd64461/pcc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/other/hd64461/stbsys.h' '/usr/local/include/openwince/device/other/hd64461/stbsys.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'device/other/hd64461/timer.h' '/usr/local/include/openwince/device/other/hd64461/timer.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/adc.h' '/usr/local/include/openwince/h8/h83048/adc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/dac.h' '/usr/local/include/openwince/h8/h83048/dac.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/dmac.h' '/usr/local/include/openwince/h8/h83048/dmac.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/flash.h' '/usr/local/include/openwince/h8/h83048/flash.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/ic.h' '/usr/local/include/openwince/h8/h83048/ic.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/itu.h' '/usr/local/include/openwince/h8/h83048/itu.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/other.h' '/usr/local/include/openwince/h8/h83048/other.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/ports.h' '/usr/local/include/openwince/h8/h83048/ports.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/rc.h' '/usr/local/include/openwince/h8/h83048/rc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/sci.h' '/usr/local/include/openwince/h8/h83048/sci.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/tpc.h' '/usr/local/include/openwince/h8/h83048/tpc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h83048/wdt.h' '/usr/local/include/openwince/h8/h83048/wdt.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/adc.h' '/usr/local/include/openwince/h8/h8s2357/adc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/bus.h' '/usr/local/include/openwince/h8/h8s2357/bus.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/dac.h' '/usr/local/include/openwince/h8/h8s2357/dac.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/dmac.h' '/usr/local/include/openwince/h8/h8s2357/dmac.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/dtc.h' '/usr/local/include/openwince/h8/h8s2357/dtc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/flash.h' '/usr/local/include/openwince/h8/h8s2357/flash.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/ic.h' '/usr/local/include/openwince/h8/h8s2357/ic.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/mcu.h' '/usr/local/include/openwince/h8/h8s2357/mcu.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/ports.h' '/usr/local/include/openwince/h8/h8s2357/ports.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/ppg.h' '/usr/local/include/openwince/h8/h8s2357/ppg.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/sci.h' '/usr/local/include/openwince/h8/h8s2357/sci.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/timer.h' '/usr/local/include/openwince/h8/h8s2357/timer.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/tpu.h' '/usr/local/include/openwince/h8/h8s2357/tpu.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'h8/h8s2357/wdt.h' '/usr/local/include/openwince/h8/h8s2357/wdt.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'sh/sh7709s/intc.h' '/usr/local/include/openwince/sh/sh7709s/intc.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'sh/sh7750/ccn.h' '/usr/local/include/openwince/sh/sh7750/ccn.h'
 /bin/sh /root/cvs-work/JTAGTOOL/include/tools/install-sh -c -m 644 'std/mic.h' '/usr/local/include/openwince/std/mic.h'
test -z "/usr/local/include" || /bin/mkdir -p "/usr/local/include"
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/include'
root@bt:~/cvs-work/JTAGTOOL/include# cd ../

これで includeは無事インストールまで完了。
次にJTAGをコンパイルしてみる。
まずは、ソースにパッチを当てる。
( kurobox_patch.diff という名前で~/cvs-work/JTAGTOOL/配下にdiffファイル用意)


root@bt:~/cvs-work/JTAGTOOL# patch -b -p0 < kurobox_patch.diff
patching file jtag/data/motorola/mpc8241/1.2
patching file jtag/libbrux/flash/amd.c

OK.
で、include と同じようにコンパイル。


root@bt:~/cvs-work/JTAGTOOL# cd jtag/
root@bt:~/cvs-work/JTAGTOOL/jtag# ./autogen.sh
Can't exec "libtoolize": No such file or directory at /usr/bin/autoreconf line 186.
Use of uninitialized value $libtoolize in pattern match (m//) at /usr/bin/autoreconf line 186.
autoreconf: Entering directory `.'
autoreconf: running: autopoint --force

Copying file ABOUT-NLS
Copying file tools/config.rpath
Creating directory m4
Copying file m4/codeset.m4
Copying file m4/gettext.m4
Copying file m4/glibc21.m4
Copying file m4/iconv.m4
Copying file m4/intdiv0.m4
Copying file m4/intmax.m4
Copying file m4/inttypes-pri.m4
Copying file m4/inttypes.m4
Copying file m4/inttypes_h.m4
Copying file m4/isc-posix.m4
Copying file m4/lcmessage.m4
Copying file m4/lib-ld.m4
Copying file m4/lib-link.m4
Copying file m4/lib-prefix.m4
Copying file m4/longdouble.m4
Copying file m4/longlong.m4
Copying file m4/nls.m4
Copying file m4/po.m4
Copying file m4/printf-posix.m4
Copying file m4/progtest.m4
Copying file m4/signed.m4
Copying file m4/size_max.m4
Copying file m4/stdint_h.m4
Copying file m4/uintmax_t.m4
Copying file m4/ulonglong.m4
Copying file m4/wchar_t.m4
Copying file m4/wint_t.m4
Copying file m4/xsize.m4
Copying file tools/mkinstalldirs
Copying file po/Makefile.in.in
Copying file po/Makevars.template
Copying file po/Rules-quot
Copying file po/boldquot.sed
Copying file po/en@boldquot.header
Copying file po/en@quot.header
Copying file po/insert-header.sin
Copying file po/quot.sed
Copying file po/remove-potcdate.sin
autoreconf: running: aclocal --force -I m4
autoreconf: configure.ac: tracing
autoreconf: configure.ac: adding subdirectory libbrux to autoreconf
autoreconf: Entering directory `libbrux'
Copying file ABOUT-NLS
Creating directory m4
Copying file m4/codeset.m4
Copying file m4/gettext.m4
Copying file m4/glibc21.m4
Copying file m4/iconv.m4
Copying file m4/intdiv0.m4
Copying file m4/intmax.m4
Copying file m4/inttypes-pri.m4
Copying file m4/inttypes.m4
Copying file m4/inttypes_h.m4
Copying file m4/isc-posix.m4
Copying file m4/lcmessage.m4
Copying file m4/lib-ld.m4
Copying file m4/lib-link.m4
Copying file m4/lib-prefix.m4
Copying file m4/longdouble.m4
Copying file m4/longlong.m4
Copying file m4/nls.m4
Copying file m4/po.m4
Copying file m4/printf-posix.m4
Copying file m4/progtest.m4
Copying file m4/signed.m4
Copying file m4/size_max.m4
Copying file m4/stdint_h.m4
Copying file m4/uintmax_t.m4
Copying file m4/ulonglong.m4
Copying file m4/wchar_t.m4
Copying file m4/wint_t.m4
Copying file m4/xsize.m4
Copying file po/Makefile.in.in
Copying file po/Makevars.template
Copying file po/Rules-quot
Copying file po/boldquot.sed
Copying file po/en@boldquot.header
Copying file po/en@quot.header
Copying file po/insert-header.sin
Copying file po/quot.sed
Copying file po/remove-potcdate.sin
autoreconf: running: aclocal --force
autoreconf: configure.ac: not using Libtool
autoreconf: running: /usr/bin/autoconf --force
autoreconf: running: /usr/bin/autoheader --force
autoreconf: running: automake --add-missing --force-missing
configure.ac:43: installing `../tools/config.guess'
configure.ac:43: installing `../tools/config.sub'
configure.ac:30: installing `../tools/install-sh'
configure.ac:30: installing `../tools/missing'
Makefile.am: installing `./INSTALL'
Makefile.am: installing `./COPYING'
Makefile.am: installing `../tools/depcomp'
autoreconf: Leaving directory `libbrux'
Makefile.am: installing `./INSTALL'
Makefile.am: installing `./COPYING'
autoreconf: Leaving directory `.'

autoreconf done.

checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking whether NLS is requested... yes
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking for ranlib... ranlib
checking for the openwince includes... /usr/local/include/openwince
checking for library containing ioperm... none required
checking for getline... yes
checking for getdelim... yes
checking for swprintf... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking linux/ppdev.h usability... yes
checking linux/ppdev.h presence... yes
checking for linux/ppdev.h... yes
checking for a readline compatible library... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating data/Makefile
config.status: creating include/Makefile
config.status: creating src/Makefile
config.status: creating src/lib/Makefile
config.status: creating src/tap/Makefile
config.status: creating src/part/Makefile
config.status: creating src/bus/Makefile
config.status: creating src/cmd/Makefile
config.status: creating po/Makefile.in
config.status: WARNING:  po/Makefile.in.in seems to ignore the --datarootdir setting
config.status: creating config.h
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing depfiles commands
=== configuring in libbrux (/root/cvs-work/JTAGTOOL/jtag/libbrux)
configure: running /bin/sh ./configure '--prefix=/usr/local'  '--enable-maintainer-mode' --cache-file=/dev/null --srcdir=.
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... yes
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking for ranlib... ranlib
checking for the openwince includes... /usr/local/include/openwince
configure: creating ./config.status
config.status: creating Makefile
config.status: creating po/Makefile.in
config.status: WARNING:  po/Makefile.in.in seems to ignore the --datarootdir setting
config.status: creating config.h
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing depfiles commands
root@bt:~/cvs-work/JTAGTOOL/jtag# make
make  all-recursive
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag'
Making all in libbrux
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make  all-recursive
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making all in po
make[4]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make libbrux.pot-update
make[5]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
sed -e '/^#/d' remove-potcdate.sin > t-remove-potcdate.sed
mv t-remove-potcdate.sed remove-potcdate.sed
/usr/bin/xgettext --default-domain=libbrux --directory=.. \
          --add-comments=TRANSLATORS: --keyword=_ --keyword=N_ \
          --files-from=./POTFILES.in \
          --copyright-holder='ETC s.r.o.' \
          --msgid-bugs-address='marcel@telka.sk'
test ! -f libbrux.po || { \
          if test -f ./libbrux.pot; then \
            sed -f remove-potcdate.sed < ./libbrux.pot > libbrux.1po && \
            sed -f remove-potcdate.sed < libbrux.po > libbrux.2po && \
            if cmp libbrux.1po libbrux.2po >/dev/null 2>&1; then \
              rm -f libbrux.1po libbrux.2po libbrux.po; \
            else \
              rm -f libbrux.1po libbrux.2po ./libbrux.pot && \
              mv libbrux.po ./libbrux.pot; \
            fi; \
          else \
            mv libbrux.po ./libbrux.pot; \
          fi; \
        }
make[5]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
test -z "" || make
touch stamp-po
make[4]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make[4]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT cmd.o -MD -MP -MF .deps/cmd.Tpo -c -o cmd.o `test -f 'cmd/cmd.c' || echo './'`cmd/cmd.c
mv -f .deps/cmd.Tpo .deps/cmd.Po
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT help.o -MD -MP -MF .deps/help.Tpo -c -o help.o `test -f 'cmd/help.c' || echo './'`cmd/help.c
mv -f .deps/help.Tpo .deps/help.Po
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT quit.o -MD -MP -MF .deps/quit.Tpo -c -o quit.o `test -f 'cmd/quit.c' || echo './'`cmd/quit.c
mv -f .deps/quit.Tpo .deps/quit.Po
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT cmd_detectflash.o -MD -MP -MF .deps/cmd_detectflash.Tpo -c -o cmd_detectflash.o `test -f 'cmd/cmd_detectflash.c' || echo './'`cmd/cmd_detectflash.c
mv -f .deps/cmd_detectflash.Tpo .deps/cmd_detectflash.Po
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT cfi.o -MD -MP -MF .deps/cfi.Tpo -c -o cfi.o `test -f 'flash/cfi.c' || echo './'`flash/cfi.c
mv -f .deps/cfi.Tpo .deps/cfi.Po
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT jedec.o -MD -MP -MF .deps/jedec.Tpo -c -o jedec.o `test -f 'flash/jedec.c' || echo './'`flash/jedec.c
mv -f .deps/jedec.Tpo .deps/jedec.Po
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT detectflash.o -MD -MP -MF .deps/detectflash.Tpo -c -o detectflash.o `test -f 'flash/detectflash.c' || echo './'`flash/detectflash.c
mv -f .deps/detectflash.Tpo .deps/detectflash.Po
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT amd.o -MD -MP -MF .deps/amd.Tpo -c -o amd.o `test -f 'flash/amd.c' || echo './'`flash/amd.c
mv -f .deps/amd.Tpo .deps/amd.Po
gcc -DHAVE_CONFIG_H -I.   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I./../include  -g -O2 -Wall -MT intel.o -MD -MP -MF .deps/intel.Tpo -c -o intel.o `test -f 'flash/intel.c' || echo './'`flash/intel.c
mv -f .deps/intel.Tpo .deps/intel.Po
rm -f libbrux.a
ar cru libbrux.a cmd.o help.o quit.o cmd_detectflash.o cfi.o jedec.o detectflash.o amd.o intel.o
ranlib libbrux.a
make[4]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making all in doc
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/doc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/doc'
Making all in include
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/include'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/include'
Making all in data
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/data'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/data'
Making all in src
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
Making all in lib
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT getdelim.o -MD -MP -MF .deps/getdelim.Tpo -c -o getdelim.o getdelim.c
mv -f .deps/getdelim.Tpo .deps/getdelim.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT getline.o -MD -MP -MF .deps/getline.Tpo -c -o getline.o getline.c
mv -f .deps/getline.Tpo .deps/getline.Po
rm -f libjtaglib.a
ar cru libjtaglib.a getdelim.o getline.o
ranlib libjtaglib.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
Making all in tap
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT tap.o -MD -MP -MF .deps/tap.Tpo -c -o tap.o tap.c
mv -f .deps/tap.Tpo .deps/tap.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT register.o -MD -MP -MF .deps/register.Tpo -c -o register.o register.c
mv -f .deps/register.Tpo .deps/register.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT state.o -MD -MP -MF .deps/state.Tpo -c -o state.o state.c
mv -f .deps/state.Tpo .deps/state.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT chain.o -MD -MP -MF .deps/chain.Tpo -c -o chain.o chain.c
mv -f .deps/chain.Tpo .deps/chain.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT parport.o -MD -MP -MF .deps/parport.Tpo -c -o parport.o parport.c
mv -f .deps/parport.Tpo .deps/parport.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT direct.o -MD -MP -MF .deps/direct.Tpo -c -o direct.o `test -f 'parport/direct.c' || echo './'`parport/direct.c
mv -f .deps/direct.Tpo .deps/direct.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ppdev.o -MD -MP -MF .deps/ppdev.Tpo -c -o ppdev.o `test -f 'parport/ppdev.c' || echo './'`parport/ppdev.c
mv -f .deps/ppdev.Tpo .deps/ppdev.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT cable.o -MD -MP -MF .deps/cable.Tpo -c -o cable.o cable.c
mv -f .deps/cable.Tpo .deps/cable.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT generic.o -MD -MP -MF .deps/generic.Tpo -c -o generic.o `test -f 'cable/generic.c' || echo './'`cable/generic.c
mv -f .deps/generic.Tpo .deps/generic.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT arcom.o -MD -MP -MF .deps/arcom.Tpo -c -o arcom.o `test -f 'cable/arcom.c' || echo './'`cable/arcom.c
mv -f .deps/arcom.Tpo .deps/arcom.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT byteblaster.o -MD -MP -MF .deps/byteblaster.Tpo -c -o byteblaster.o `test -f 'cable/byteblaster.c' || echo './'`cable/byteblaster.c
mv -f .deps/byteblaster.Tpo .deps/byteblaster.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT dlc5.o -MD -MP -MF .deps/dlc5.Tpo -c -o dlc5.o `test -f 'cable/dlc5.c' || echo './'`cable/dlc5.c
mv -f .deps/dlc5.Tpo .deps/dlc5.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ea253.o -MD -MP -MF .deps/ea253.Tpo -c -o ea253.o `test -f 'cable/ea253.c' || echo './'`cable/ea253.c
mv -f .deps/ea253.Tpo .deps/ea253.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ei012.o -MD -MP -MF .deps/ei012.Tpo -c -o ei012.o `test -f 'cable/ei012.c' || echo './'`cable/ei012.c
mv -f .deps/ei012.Tpo .deps/ei012.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT keithkoep.o -MD -MP -MF .deps/keithkoep.Tpo -c -o keithkoep.o `test -f 'cable/keithkoep.c' || echo './'`cable/keithkoep.c
mv -f .deps/keithkoep.Tpo .deps/keithkoep.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT lattice.o -MD -MP -MF .deps/lattice.Tpo -c -o lattice.o `test -f 'cable/lattice.c' || echo './'`cable/lattice.c
mv -f .deps/lattice.Tpo .deps/lattice.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT mpcbdm.o -MD -MP -MF .deps/mpcbdm.Tpo -c -o mpcbdm.o `test -f 'cable/mpcbdm.c' || echo './'`cable/mpcbdm.c
mv -f .deps/mpcbdm.Tpo .deps/mpcbdm.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT triton.o -MD -MP -MF .deps/triton.Tpo -c -o triton.o `test -f 'cable/triton.c' || echo './'`cable/triton.c
mv -f .deps/triton.Tpo .deps/triton.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT wiggler.o -MD -MP -MF .deps/wiggler.Tpo -c -o wiggler.o `test -f 'cable/wiggler.c' || echo './'`cable/wiggler.c
mv -f .deps/wiggler.Tpo .deps/wiggler.Po
rm -f libtap.a
ar cru libtap.a tap.o register.o state.o chain.o parport.o direct.o ppdev.o cable.o generic.o arcom.o byteblaster.o dlc5.o ea253.o ei012.o keithkoep.o lattice.o mpcbdm.o triton.o wiggler.o
ranlib libtap.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
Making all in part
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT signal.o -MD -MP -MF .deps/signal.Tpo -c -o signal.o signal.c
signal.c: In function `salias_alloc':
signal.c:71: warning: assignment discards qualifiers from pointer target type
mv -f .deps/signal.Tpo .deps/signal.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT instruction.o -MD -MP -MF .deps/instruction.Tpo -c -o instruction.o instruction.c
mv -f .deps/instruction.Tpo .deps/instruction.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT data_register.o -MD -MP -MF .deps/data_register.Tpo -c -o data_register.o data_register.c
mv -f .deps/data_register.Tpo .deps/data_register.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT bsbit.o -MD -MP -MF .deps/bsbit.Tpo -c -o bsbit.o bsbit.c
mv -f .deps/bsbit.Tpo .deps/bsbit.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT part.o -MD -MP -MF .deps/part.Tpo -c -o part.o part.c
mv -f .deps/part.Tpo .deps/part.Po
rm -f libpart.a
ar cru libpart.a signal.o instruction.o data_register.o bsbit.o part.o
ranlib libpart.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
Making all in bus
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT buses.o -MD -MP -MF .deps/buses.Tpo -c -o buses.o buses.c
mv -f .deps/buses.Tpo .deps/buses.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT au1500.o -MD -MP -MF .deps/au1500.Tpo -c -o au1500.o au1500.c
mv -f .deps/au1500.Tpo .deps/au1500.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT bcm1250.o -MD -MP -MF .deps/bcm1250.Tpo -c -o bcm1250.o bcm1250.c
mv -f .deps/bcm1250.Tpo .deps/bcm1250.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ixp425.o -MD -MP -MF .deps/ixp425.Tpo -c -o ixp425.o ixp425.c
mv -f .deps/ixp425.Tpo .deps/ixp425.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT lh7a400.o -MD -MP -MF .deps/lh7a400.Tpo -c -o lh7a400.o lh7a400.c
mv -f .deps/lh7a400.Tpo .deps/lh7a400.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT mpc824x.o -MD -MP -MF .deps/mpc824x.Tpo -c -o mpc824x.o mpc824x.c
mv -f .deps/mpc824x.Tpo .deps/mpc824x.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ppc440gx_ebc8.o -MD -MP -MF .deps/ppc440gx_ebc8.Tpo -c -o ppc440gx_ebc8.o ppc440gx_ebc8.c
mv -f .deps/ppc440gx_ebc8.Tpo .deps/ppc440gx_ebc8.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT pxa2x0.o -MD -MP -MF .deps/pxa2x0.Tpo -c -o pxa2x0.o pxa2x0.c
mv -f .deps/pxa2x0.Tpo .deps/pxa2x0.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT sa1110.o -MD -MP -MF .deps/sa1110.Tpo -c -o sa1110.o sa1110.c
mv -f .deps/sa1110.Tpo .deps/sa1110.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT s3c4510x.o -MD -MP -MF .deps/s3c4510x.Tpo -c -o s3c4510x.o s3c4510x.c
mv -f .deps/s3c4510x.Tpo .deps/s3c4510x.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT sh7727.o -MD -MP -MF .deps/sh7727.Tpo -c -o sh7727.o sh7727.c
mv -f .deps/sh7727.Tpo .deps/sh7727.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT sh7750r.o -MD -MP -MF .deps/sh7750r.Tpo -c -o sh7750r.o sh7750r.c
mv -f .deps/sh7750r.Tpo .deps/sh7750r.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT sh7751r.o -MD -MP -MF .deps/sh7751r.Tpo -c -o sh7751r.o sh7751r.c
mv -f .deps/sh7751r.Tpo .deps/sh7751r.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT tx4925.o -MD -MP -MF .deps/tx4925.Tpo -c -o tx4925.o tx4925.c
mv -f .deps/tx4925.Tpo .deps/tx4925.Po
rm -f libbus.a
ar cru libbus.a buses.o au1500.o bcm1250.o ixp425.o lh7a400.o mpc824x.o ppc440gx_ebc8.o pxa2x0.o sa1110.o s3c4510x.o sh7727.o sh7750r.o sh7751r.o tx4925.o
ranlib libbus.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
Making all in cmd
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT frequency.o -MD -MP -MF .deps/frequency.Tpo -c -o frequency.o frequency.c
mv -f .deps/frequency.Tpo .deps/frequency.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT cable.o -MD -MP -MF .deps/cable.Tpo -c -o cable.o cable.c
mv -f .deps/cable.Tpo .deps/cable.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT reset.o -MD -MP -MF .deps/reset.Tpo -c -o reset.o reset.c
mv -f .deps/reset.Tpo .deps/reset.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT discovery.o -MD -MP -MF .deps/discovery.Tpo -c -o discovery.o discovery.c
mv -f .deps/discovery.Tpo .deps/discovery.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT detect.o -MD -MP -MF .deps/detect.Tpo -c -o detect.o detect.c
mv -f .deps/detect.Tpo .deps/detect.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT signal.o -MD -MP -MF .deps/signal.Tpo -c -o signal.o signal.c
mv -f .deps/signal.Tpo .deps/signal.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT salias.o -MD -MP -MF .deps/salias.Tpo -c -o salias.o salias.c
mv -f .deps/salias.Tpo .deps/salias.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT bit.o -MD -MP -MF .deps/bit.Tpo -c -o bit.o bit.c
mv -f .deps/bit.Tpo .deps/bit.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT register.o -MD -MP -MF .deps/register.Tpo -c -o register.o register.c
mv -f .deps/register.Tpo .deps/register.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT initbus.o -MD -MP -MF .deps/initbus.Tpo -c -o initbus.o initbus.c
mv -f .deps/initbus.Tpo .deps/initbus.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT print.o -MD -MP -MF .deps/print.Tpo -c -o print.o print.c
mv -f .deps/print.Tpo .deps/print.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT part.o -MD -MP -MF .deps/part.Tpo -c -o part.o part.c
mv -f .deps/part.Tpo .deps/part.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT bus.o -MD -MP -MF .deps/bus.Tpo -c -o bus.o bus.c
mv -f .deps/bus.Tpo .deps/bus.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT instruction.o -MD -MP -MF .deps/instruction.Tpo -c -o instruction.o instruction.c
mv -f .deps/instruction.Tpo .deps/instruction.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT shift.o -MD -MP -MF .deps/shift.Tpo -c -o shift.o shift.c
mv -f .deps/shift.Tpo .deps/shift.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT dr.o -MD -MP -MF .deps/dr.Tpo -c -o dr.o dr.c
mv -f .deps/dr.Tpo .deps/dr.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT get.o -MD -MP -MF .deps/get.Tpo -c -o get.o get.c
mv -f .deps/get.Tpo .deps/get.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT set.o -MD -MP -MF .deps/set.Tpo -c -o set.o set.c
mv -f .deps/set.Tpo .deps/set.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT endian.o -MD -MP -MF .deps/endian.Tpo -c -o endian.o endian.c
mv -f .deps/endian.Tpo .deps/endian.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT peekpoke.o -MD -MP -MF .deps/peekpoke.Tpo -c -o peekpoke.o peekpoke.c
mv -f .deps/peekpoke.Tpo .deps/peekpoke.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT readmem.o -MD -MP -MF .deps/readmem.Tpo -c -o readmem.o readmem.c
mv -f .deps/readmem.Tpo .deps/readmem.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT flashmem.o -MD -MP -MF .deps/flashmem.Tpo -c -o flashmem.o flashmem.c
mv -f .deps/flashmem.Tpo .deps/flashmem.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT eraseflash.o -MD -MP -MF .deps/eraseflash.Tpo -c -o eraseflash.o eraseflash.c
mv -f .deps/eraseflash.Tpo .deps/eraseflash.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT script.o -MD -MP -MF .deps/script.Tpo -c -o script.o script.c
mv -f .deps/script.Tpo .deps/script.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT include.o -MD -MP -MF .deps/include.Tpo -c -o include.o include.c
mv -f .deps/include.Tpo .deps/include.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT cmd.o -MD -MP -MF .deps/cmd.Tpo -c -o cmd.o cmd.c
mv -f .deps/cmd.Tpo .deps/cmd.Po
rm -f libcmd.a
ar cru libcmd.a frequency.o cable.o reset.o discovery.o detect.o signal.o salias.o bit.o register.o initbus.o print.o part.o bus.o instruction.o shift.o dr.o get.o set.o endian.o peekpoke.o readmem.o flashmem.o eraseflash.o script.o include.o cmd.o
ranlib libcmd.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I.. -I../include  -g -O2 -Wall -MT jtag.o -MD -MP -MF .deps/jtag.Tpo -c -o jtag.o jtag.c
mv -f .deps/jtag.Tpo .deps/jtag.Po
else rm -f .deps/jtag.Tpo; exit 1
; fi
jtag.c:33:31: readline/readline.h: No such file or directory
jtag.c:34:30: readline/history.h: No such file or directory
jtag.c: In function `jtag_load_history':
jtag.c:94: warning: implicit declaration of function `using_history'
jtag.c:109: warning: implicit declaration of function `read_history'
jtag.c: In function `jtag_save_history':
jtag.c:133: warning: implicit declaration of function `write_history'
jtag.c: In function `jtag_readline_loop':
jtag.c:190: warning: implicit declaration of function `readline'
jtag.c:190: warning: assignment makes pointer from integer without a cast
jtag.c:194: warning: implicit declaration of function `add_history'
make[3]: *** [jtag.o] Error 1
make[3]: Leaving directory `/home/umino/jtagwork/jtag/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/umino/jtagwork/jtag/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/umino/jtagwork/jtag'
make: *** [all] Error 2

GNU readlineライブラリがないらしいので apt でインストール


root@bt:~/cvs-work/JTAGTOOL/jtag# aptitude install libreadline-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Note: selecting "libreadline5-dev" instead of the
      virtual package "libreadline-dev"
The following NEW packages will be installed:
  libreadline5-dev
0 packages upgraded, 1 newly installed, 0 to remove and 9 not upgraded.
Need to get 221kB of archives. After unpacking 606kB will be used.
Writing extended state information... Done
Get:1 http://archive.offensive-security.com pwnsauce/main libreadline5-dev 5.2-3build1 [221kB]
Fetched 221kB in 3s (62.5kB/s)
Selecting previously deselected package libreadline5-dev.
(Reading database ... 249645 files and directories currently installed.)
Unpacking libreadline5-dev (from .../libreadline5-dev_5.2-3build1_i386.deb) ...
Setting up libreadline5-dev (5.2-3build1) ...

Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Writing extended state information... Done

再度 ./configure と make


root@bt:~/cvs-work/JTAGTOOL/jtag# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking whether NLS is requested... yes
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking for ranlib... ranlib
checking for the openwince includes... /usr/local/include/openwince
checking for library containing ioperm... none required
checking for getline... yes
checking for getdelim... yes
checking for swprintf... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking linux/ppdev.h usability... yes
checking linux/ppdev.h presence... yes
checking for linux/ppdev.h... yes
checking for a readline compatible library... -lreadline
checking readline.h usability... no
checking readline.h presence... no
checking for readline.h... no
checking readline/readline.h usability... yes
checking readline/readline.h presence... yes
checking for readline/readline.h... yes
checking whether readline supports history... yes
checking history.h usability... no
checking history.h presence... no
checking for history.h... no
checking readline/history.h usability... yes
checking readline/history.h presence... yes
checking for readline/history.h... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating data/Makefile
config.status: creating include/Makefile
config.status: creating src/Makefile
config.status: creating src/lib/Makefile
config.status: creating src/tap/Makefile
config.status: creating src/part/Makefile
config.status: creating src/bus/Makefile
config.status: creating src/cmd/Makefile
config.status: creating po/Makefile.in
config.status: WARNING:  po/Makefile.in.in seems to ignore the --datarootdir setting
config.status: creating config.h
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing depfiles commands
=== configuring in libbrux (/root/cvs-work/JTAGTOOL/jtag/libbrux)
configure: running /bin/sh ./configure '--prefix=/usr/local'  --cache-file=/dev/null --srcdir=.
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking for CFPreferencesCopyAppValue... no
checking for CFLocaleCopyCurrent... no
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking for ranlib... ranlib
checking for the openwince includes... /usr/local/include/openwince
configure: creating ./config.status
config.status: creating Makefile
config.status: creating po/Makefile.in
config.status: WARNING:  po/Makefile.in.in seems to ignore the --datarootdir setting
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing depfiles commands
root@bt:~/cvs-work/JTAGTOOL/jtag# make
make  all-recursive
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag'
Making all in libbrux
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make  all-recursive
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making all in po
make[4]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make libbrux.pot-update
make[5]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
/usr/bin/xgettext --default-domain=libbrux --directory=.. \
          --add-comments=TRANSLATORS: --keyword=_ --keyword=N_ \
          --files-from=./POTFILES.in \
          --copyright-holder='ETC s.r.o.' \
          --msgid-bugs-address='marcel@telka.sk'
test ! -f libbrux.po || { \
          if test -f ./libbrux.pot; then \
            sed -f remove-potcdate.sed < ./libbrux.pot > libbrux.1po && \
            sed -f remove-potcdate.sed < libbrux.po > libbrux.2po && \
            if cmp libbrux.1po libbrux.2po >/dev/null 2>&1; then \
              rm -f libbrux.1po libbrux.2po libbrux.po; \
            else \
              rm -f libbrux.1po libbrux.2po ./libbrux.pot && \
              mv libbrux.po ./libbrux.pot; \
            fi; \
          else \
            mv libbrux.po ./libbrux.pot; \
          fi; \
        }
make[5]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
test -z "" || make
touch stamp-po
make[4]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make[4]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[4]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making all in doc
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/doc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/doc'
Making all in include
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/include'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/include'
Making all in data
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/data'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/data'
Making all in src
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
Making all in lib
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT getdelim.o -MD -MP -MF .deps/getdelim.Tpo -c -o getdelim.o getdelim.c
mv -f .deps/getdelim.Tpo .deps/getdelim.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT getline.o -MD -MP -MF .deps/getline.Tpo -c -o getline.o getline.c
mv -f .deps/getline.Tpo .deps/getline.Po
rm -f libjtaglib.a
ar cru libjtaglib.a getdelim.o getline.o
ranlib libjtaglib.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
Making all in tap
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT tap.o -MD -MP -MF .deps/tap.Tpo -c -o tap.o tap.c
mv -f .deps/tap.Tpo .deps/tap.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT chain.o -MD -MP -MF .deps/chain.Tpo -c -o chain.o chain.c
mv -f .deps/chain.Tpo .deps/chain.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT parport.o -MD -MP -MF .deps/parport.Tpo -c -o parport.o parport.c
mv -f .deps/parport.Tpo .deps/parport.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT direct.o -MD -MP -MF .deps/direct.Tpo -c -o direct.o `test -f 'parport/direct.c' || echo './'`parport/direct.c
mv -f .deps/direct.Tpo .deps/direct.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ppdev.o -MD -MP -MF .deps/ppdev.Tpo -c -o ppdev.o `test -f 'parport/ppdev.c' || echo './'`parport/ppdev.c
mv -f .deps/ppdev.Tpo .deps/ppdev.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT cable.o -MD -MP -MF .deps/cable.Tpo -c -o cable.o cable.c
mv -f .deps/cable.Tpo .deps/cable.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT arcom.o -MD -MP -MF .deps/arcom.Tpo -c -o arcom.o `test -f 'cable/arcom.c' || echo './'`cable/arcom.c
mv -f .deps/arcom.Tpo .deps/arcom.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT byteblaster.o -MD -MP -MF .deps/byteblaster.Tpo -c -o byteblaster.o `test -f 'cable/byteblaster.c' || echo './'`cable/byteblaster.c
mv -f .deps/byteblaster.Tpo .deps/byteblaster.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT dlc5.o -MD -MP -MF .deps/dlc5.Tpo -c -o dlc5.o `test -f 'cable/dlc5.c' || echo './'`cable/dlc5.c
mv -f .deps/dlc5.Tpo .deps/dlc5.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ea253.o -MD -MP -MF .deps/ea253.Tpo -c -o ea253.o `test -f 'cable/ea253.c' || echo './'`cable/ea253.c
mv -f .deps/ea253.Tpo .deps/ea253.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ei012.o -MD -MP -MF .deps/ei012.Tpo -c -o ei012.o `test -f 'cable/ei012.c' || echo './'`cable/ei012.c
mv -f .deps/ei012.Tpo .deps/ei012.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT keithkoep.o -MD -MP -MF .deps/keithkoep.Tpo -c -o keithkoep.o `test -f 'cable/keithkoep.c' || echo './'`cable/keithkoep.c
mv -f .deps/keithkoep.Tpo .deps/keithkoep.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT lattice.o -MD -MP -MF .deps/lattice.Tpo -c -o lattice.o `test -f 'cable/lattice.c' || echo './'`cable/lattice.c
mv -f .deps/lattice.Tpo .deps/lattice.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT mpcbdm.o -MD -MP -MF .deps/mpcbdm.Tpo -c -o mpcbdm.o `test -f 'cable/mpcbdm.c' || echo './'`cable/mpcbdm.c
mv -f .deps/mpcbdm.Tpo .deps/mpcbdm.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT triton.o -MD -MP -MF .deps/triton.Tpo -c -o triton.o `test -f 'cable/triton.c' || echo './'`cable/triton.c
mv -f .deps/triton.Tpo .deps/triton.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT wiggler.o -MD -MP -MF .deps/wiggler.Tpo -c -o wiggler.o `test -f 'cable/wiggler.c' || echo './'`cable/wiggler.c
mv -f .deps/wiggler.Tpo .deps/wiggler.Po
rm -f libtap.a
ar cru libtap.a tap.o register.o state.o chain.o parport.o direct.o ppdev.o cable.o generic.o arcom.o byteblaster.o dlc5.o ea253.o ei012.o keithkoep.o lattice.o mpcbdm.o triton.o wiggler.o
ranlib libtap.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
Making all in part
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT instruction.o -MD -MP -MF .deps/instruction.Tpo -c -o instruction.o instruction.c
mv -f .deps/instruction.Tpo .deps/instruction.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT data_register.o -MD -MP -MF .deps/data_register.Tpo -c -o data_register.o data_register.c
mv -f .deps/data_register.Tpo .deps/data_register.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT part.o -MD -MP -MF .deps/part.Tpo -c -o part.o part.c
mv -f .deps/part.Tpo .deps/part.Po
rm -f libpart.a
ar cru libpart.a signal.o instruction.o data_register.o bsbit.o part.o
ranlib libpart.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
Making all in bus
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT buses.o -MD -MP -MF .deps/buses.Tpo -c -o buses.o buses.c
mv -f .deps/buses.Tpo .deps/buses.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT au1500.o -MD -MP -MF .deps/au1500.Tpo -c -o au1500.o au1500.c
mv -f .deps/au1500.Tpo .deps/au1500.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT bcm1250.o -MD -MP -MF .deps/bcm1250.Tpo -c -o bcm1250.o bcm1250.c
bcm1250.c: In function 'bcm1250_bus_write':
bcm1250.c:196: warning: array subscript is above array bounds
bcm1250.c: In function 'bcm1250_bus_read_start':
bcm1250.c:120: warning: array subscript is above array bounds
mv -f .deps/bcm1250.Tpo .deps/bcm1250.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ixp425.o -MD -MP -MF .deps/ixp425.Tpo -c -o ixp425.o ixp425.c
mv -f .deps/ixp425.Tpo .deps/ixp425.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT lh7a400.o -MD -MP -MF .deps/lh7a400.Tpo -c -o lh7a400.o lh7a400.c
mv -f .deps/lh7a400.Tpo .deps/lh7a400.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT mpc824x.o -MD -MP -MF .deps/mpc824x.Tpo -c -o mpc824x.o mpc824x.c
mv -f .deps/mpc824x.Tpo .deps/mpc824x.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT ppc440gx_ebc8.o -MD -MP -MF .deps/ppc440gx_ebc8.Tpo -c -o ppc440gx_ebc8.o ppc440gx_ebc8.c
mv -f .deps/ppc440gx_ebc8.Tpo .deps/ppc440gx_ebc8.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT pxa2x0.o -MD -MP -MF .deps/pxa2x0.Tpo -c -o pxa2x0.o pxa2x0.c
mv -f .deps/pxa2x0.Tpo .deps/pxa2x0.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT sa1110.o -MD -MP -MF .deps/sa1110.Tpo -c -o sa1110.o sa1110.c
mv -f .deps/sa1110.Tpo .deps/sa1110.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT s3c4510x.o -MD -MP -MF .deps/s3c4510x.Tpo -c -o s3c4510x.o s3c4510x.c
mv -f .deps/s3c4510x.Tpo .deps/s3c4510x.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT sh7727.o -MD -MP -MF .deps/sh7727.Tpo -c -o sh7727.o sh7727.c
mv -f .deps/sh7727.Tpo .deps/sh7727.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT sh7750r.o -MD -MP -MF .deps/sh7750r.Tpo -c -o sh7750r.o sh7750r.c
mv -f .deps/sh7750r.Tpo .deps/sh7750r.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT sh7751r.o -MD -MP -MF .deps/sh7751r.Tpo -c -o sh7751r.o sh7751r.c
mv -f .deps/sh7751r.Tpo .deps/sh7751r.Po
gcc -DHAVE_CONFIG_H -I. -I../..   -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT tx4925.o -MD -MP -MF .deps/tx4925.Tpo -c -o tx4925.o tx4925.c
mv -f .deps/tx4925.Tpo .deps/tx4925.Po
rm -f libbus.a
ar cru libbus.a buses.o au1500.o bcm1250.o ixp425.o lh7a400.o mpc824x.o ppc440gx_ebc8.o pxa2x0.o sa1110.o s3c4510x.o sh7727.o sh7750r.o sh7751r.o tx4925.o
ranlib libbus.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
Making all in cmd
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT frequency.o -MD -MP -MF .deps/frequency.Tpo -c -o frequency.o frequency.c
mv -f .deps/frequency.Tpo .deps/frequency.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT cable.o -MD -MP -MF .deps/cable.Tpo -c -o cable.o cable.c
mv -f .deps/cable.Tpo .deps/cable.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT reset.o -MD -MP -MF .deps/reset.Tpo -c -o reset.o reset.c
mv -f .deps/reset.Tpo .deps/reset.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT discovery.o -MD -MP -MF .deps/discovery.Tpo -c -o discovery.o discovery.c
mv -f .deps/discovery.Tpo .deps/discovery.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT detect.o -MD -MP -MF .deps/detect.Tpo -c -o detect.o detect.c
mv -f .deps/detect.Tpo .deps/detect.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT signal.o -MD -MP -MF .deps/signal.Tpo -c -o signal.o signal.c
mv -f .deps/signal.Tpo .deps/signal.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT salias.o -MD -MP -MF .deps/salias.Tpo -c -o salias.o salias.c
mv -f .deps/salias.Tpo .deps/salias.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT bit.o -MD -MP -MF .deps/bit.Tpo -c -o bit.o bit.c
mv -f .deps/bit.Tpo .deps/bit.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT register.o -MD -MP -MF .deps/register.Tpo -c -o register.o register.c
mv -f .deps/register.Tpo .deps/register.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT initbus.o -MD -MP -MF .deps/initbus.Tpo -c -o initbus.o initbus.c
mv -f .deps/initbus.Tpo .deps/initbus.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT print.o -MD -MP -MF .deps/print.Tpo -c -o print.o print.c
print.c: In function 'cmd_print_run':
print.c:81: warning: format not a string literal and no format arguments
mv -f .deps/print.Tpo .deps/print.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT part.o -MD -MP -MF .deps/part.Tpo -c -o part.o part.c
mv -f .deps/part.Tpo .deps/part.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT bus.o -MD -MP -MF .deps/bus.Tpo -c -o bus.o bus.c
mv -f .deps/bus.Tpo .deps/bus.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT instruction.o -MD -MP -MF .deps/instruction.Tpo -c -o instruction.o instruction.c
mv -f .deps/instruction.Tpo .deps/instruction.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT shift.o -MD -MP -MF .deps/shift.Tpo -c -o shift.o shift.c
mv -f .deps/shift.Tpo .deps/shift.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT dr.o -MD -MP -MF .deps/dr.Tpo -c -o dr.o dr.c
mv -f .deps/dr.Tpo .deps/dr.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT get.o -MD -MP -MF .deps/get.Tpo -c -o get.o get.c
mv -f .deps/get.Tpo .deps/get.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT set.o -MD -MP -MF .deps/set.Tpo -c -o set.o set.c
mv -f .deps/set.Tpo .deps/set.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT endian.o -MD -MP -MF .deps/endian.Tpo -c -o endian.o endian.c
mv -f .deps/endian.Tpo .deps/endian.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT peekpoke.o -MD -MP -MF .deps/peekpoke.Tpo -c -o peekpoke.o peekpoke.c
mv -f .deps/peekpoke.Tpo .deps/peekpoke.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT readmem.o -MD -MP -MF .deps/readmem.Tpo -c -o readmem.o readmem.c
mv -f .deps/readmem.Tpo .deps/readmem.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT flashmem.o -MD -MP -MF .deps/flashmem.Tpo -c -o flashmem.o flashmem.c
mv -f .deps/flashmem.Tpo .deps/flashmem.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT eraseflash.o -MD -MP -MF .deps/eraseflash.Tpo -c -o eraseflash.o eraseflash.c
eraseflash.c: In function 'cmd_eraseflash_run':
eraseflash.c:52: warning: pointer targets in passing argument 2 of 'cmd_get_number' differ in signedness
mv -f .deps/eraseflash.Tpo .deps/eraseflash.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT script.o -MD -MP -MF .deps/script.Tpo -c -o script.o script.c
mv -f .deps/script.Tpo .deps/script.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT include.o -MD -MP -MF .deps/include.Tpo -c -o include.o include.c
mv -f .deps/include.Tpo .deps/include.Po
gcc -DHAVE_CONFIG_H -I. -I../.. -DJTAG_DATA_DIR=\"/usr/local/share/jtag\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I../.. -I../../include  -g -O2 -Wall -MT cmd.o -MD -MP -MF .deps/cmd.Tpo -c -o cmd.o cmd.c
mv -f .deps/cmd.Tpo .deps/cmd.Po
rm -f libcmd.a
ar cru libcmd.a frequency.o cable.o reset.o discovery.o detect.o signal.o salias.o bit.o register.o initbus.o print.o part.o bus.o instruction.o shift.o dr.o get.o set.o endian.o peekpoke.o readmem.o flashmem.o eraseflash.o script.o include.o cmd.o
ranlib libcmd.a
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I.. -I../include  -g -O2 -Wall -MT jtag.o -MD -MP -MF .deps/jtag.Tpo -c -o jtag.o jtag.c
jtag.c: In function 'jtag_parse_stream':
jtag.c:206: warning: pointer targets in passing argument 2 of 'getline' differ in signedness
mv -f .deps/jtag.Tpo .deps/jtag.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I.. -I../include  -g -O2 -Wall -MT detect.o -MD -MP -MF .deps/detect.Tpo -c -o detect.o detect.c
mv -f .deps/detect.Tpo .deps/detect.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I.. -I../include  -g -O2 -Wall -MT discovery.o -MD -MP -MF .deps/discovery.Tpo -c -o discovery.o discovery.c
mv -f .deps/discovery.Tpo .deps/discovery.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I.. -I../include  -g -O2 -Wall -MT readmem.o -MD -MP -MF .deps/readmem.Tpo -c -o readmem.o readmem.c
readmem.c: In function 'readmem':
readmem.c:105: warning: format '%08X' expects type 'unsigned int', but argument 2 has type 'uint64_t'
readmem.c:108: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result
mv -f .deps/readmem.Tpo .deps/readmem.Po
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I.. -I../include  -g -O2 -Wall -MT flash.o -MD -MP -MF .deps/flash.Tpo -c -o flash.o flash.c
flash.c:67: error: static declaration of 'flash_driver' follows non-static declaration
../include/flash.h:31: error: previous declaration of 'flash_driver' was here
flash.c: In function 'flashmsbin':
flash.c:110: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:124: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:125: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:140: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:141: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:142: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:161: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:180: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:181: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:182: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
flash.c:201: warning: ignoring return value of 'fread', declared with attribute warn_unused_result
make[3]: *** [flash.o] Error 1
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag'
make: *** [all] Error 2

うーん。makeが通らない・・・。
調べてみるとどうもGCC4系ではコンパイルが通らないらしい。
とりあえず、GCC3系をインストール。


root@bt:~/cvs-work/JTAGTOOL/jtag# aptitude install gcc-3.4
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
The following NEW packages will be installed:
  cpp-3.4{a} gcc-3.4 gcc-3.4-base{a}
0 packages upgraded, 3 newly installed, 0 to remove and 9 not upgraded.
Need to get 3389kB of archives. After unpacking 8827kB will be used.
Do you want to continue? [Y/n/?] y
Writing extended state information... Done
Get:1 http://archive.offensive-security.com pwnsauce/universe gcc-3.4-base 3.4.6-8ubuntu2 [165kB]
Get:2 http://archive.offensive-security.com pwnsauce/universe cpp-3.4 3.4.6-8ubuntu2 [1683kB]
Get:3 http://archive.offensive-security.com pwnsauce/universe gcc-3.4 3.4.6-8ubuntu2 [1541kB]
Fetched 3389kB in 17s (194kB/s)
Selecting previously deselected package gcc-3.4-base.
(Reading database ... 249672 files and directories currently installed.)
Unpacking gcc-3.4-base (from .../gcc-3.4-base_3.4.6-8ubuntu2_i386.deb) ...
Selecting previously deselected package cpp-3.4.
Unpacking cpp-3.4 (from .../cpp-3.4_3.4.6-8ubuntu2_i386.deb) ...
Selecting previously deselected package gcc-3.4.
Unpacking gcc-3.4 (from .../gcc-3.4_3.4.6-8ubuntu2_i386.deb) ...
Processing triggers for man-db ...
Setting up gcc-3.4-base (3.4.6-8ubuntu2) ...
Setting up cpp-3.4 (3.4.6-8ubuntu2) ...
Setting up gcc-3.4 (3.4.6-8ubuntu2) ...
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initializing package states... Done
Writing extended state information... Done

完了。GCC3系に切り替えるために update-alternatives でGCCを設定する。


root@bt:~/cvs-work/JTAGTOOL/jtag# update-alternatives --config gcc
No alternatives for gcc.

あれ? gcc っていう設定項目がないって言われる。
というわけで、今後のために設定できるように gcc の項目を作成


root@bt:~/cvs-work/JTAGTOOL/jtag# dpkg -l | grep gcc | awk '{print $2}'
gcc
gcc-3.4
gcc-3.4-base
gcc-4.3
gcc-4.3-base
libgcc1
root@bt:~/cvs-work/JTAGTOOL/jtag# update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-3.4 1
root@bt:~/cvs-work/JTAGTOOL/jtag# update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.3 0

改めてgcc の設定項目を呼び出してみる。


root@bt:~/cvs-work/JTAGTOOL/jtag# update-alternatives --config gcc

There are 2 alternatives which provide `gcc'.

  Selection    Alternative
-----------------------------------------------
*+        1    /usr/bin/gcc-3.4
          2    /usr/bin/gcc-4.3

Press enter to keep the default[*], or type selection number: 1
Using '/usr/bin/gcc-3.4' to provide 'gcc'.

gcc3.4 に切り替わったはずなので再度コンパイルしてみる。


root@bt:~/cvs-work/JTAGTOOL/jtag# make
make  all-recursive
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag'
Making all in libbrux
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make  all-recursive
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making all in po
make[4]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make libbrux.pot-update
make[5]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
/usr/bin/xgettext --default-domain=libbrux --directory=.. \
          --add-comments=TRANSLATORS: --keyword=_ --keyword=N_ \
          --files-from=./POTFILES.in \
          --copyright-holder='ETC s.r.o.' \
          --msgid-bugs-address='marcel@telka.sk'
test ! -f libbrux.po || { \
          if test -f ./libbrux.pot; then \
            sed -f remove-potcdate.sed < ./libbrux.pot > libbrux.1po && \
            sed -f remove-potcdate.sed < libbrux.po > libbrux.2po && \
            if cmp libbrux.1po libbrux.2po >/dev/null 2>&1; then \
              rm -f libbrux.1po libbrux.2po libbrux.po; \
            else \
              rm -f libbrux.1po libbrux.2po ./libbrux.pot && \
              mv libbrux.po ./libbrux.pot; \
            fi; \
          else \
            mv libbrux.po ./libbrux.pot; \
          fi; \
        }
make[5]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
test -z "" || make
touch stamp-po
make[4]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make[4]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[4]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making all in doc
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/doc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/doc'
Making all in include
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/include'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/include'
Making all in data
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/data'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/data'
Making all in src
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
Making all in lib
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
Making all in tap
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
Making all in part
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
Making all in bus
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
Making all in cmd
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I.. -I../include  -g -O2 -Wall -MT flash.o -MD -MP -MF .deps/flash.Tpo -c -o flash.o flash.c
mv -f .deps/flash.Tpo .deps/flash.Po
gcc  -g -O2 -Wall   -o jtag jtag.o detect.o discovery.o readmem.o flash.o -Ltap -ltap -Lpart -lpart -Llib -ljtaglib -L../libbrux -lbrux -Lcmd -lcmd -L../libbrux -lbrux -Lbus -lbus  -lreadline
gcc -DHAVE_CONFIG_H -I. -I.. -DLOCALEDIR=\"/usr/local/share/locale\"  -I/usr/local/include/openwince -I/usr/local/include/openwince/device -I/usr/local/include/openwince/arm -I.. -I../include  -g -O2 -Wall -MT bsdl2jtag.o -MD -MP -MF .deps/bsdl2jtag.Tpo -c -o bsdl2jtag.o bsdl2jtag.c
mv -f .deps/bsdl2jtag.Tpo .deps/bsdl2jtag.Po
gcc  -g -O2 -Wall   -o bsdl2jtag bsdl2jtag.o  -lreadline
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src'
Making all in po
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/po'
make jtag.pot-update
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/po'
sed -e '/^#/d' remove-potcdate.sin > t-remove-potcdate.sed
mv t-remove-potcdate.sed remove-potcdate.sed
/usr/bin/xgettext --default-domain=jtag --directory=.. \
          --add-comments=TRANSLATORS: --keyword=_ --keyword=N_ \
          --files-from=./POTFILES.in \
          --copyright-holder='ETC s.r.o.' \
          --msgid-bugs-address='marcel@telka.sk'
test ! -f jtag.po || { \
          if test -f ./jtag.pot; then \
            sed -f remove-potcdate.sed < ./jtag.pot > jtag.1po && \
            sed -f remove-potcdate.sed < jtag.po > jtag.2po && \
            if cmp jtag.1po jtag.2po >/dev/null 2>&1; then \
              rm -f jtag.1po jtag.2po jtag.po; \
            else \
              rm -f jtag.1po jtag.2po ./jtag.pot && \
              mv jtag.po ./jtag.pot; \
            fi; \
          else \
            mv jtag.po ./jtag.pot; \
          fi; \
        }
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/po'
test -z "fi.gmo fr.gmo rw.gmo sk.gmo" || make fi.gmo fr.gmo rw.gmo sk.gmo
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/po'
/usr/bin/msgmerge --update fi.po jtag.pot
................................................ done.
rm -f fi.gmo && /usr/bin/msgfmt -c --statistics -o fi.gmo fi.po
272 translated messages, 18 fuzzy translations, 3 untranslated messages.
/usr/bin/msgmerge --update fr.po jtag.pot
................................................ done.
rm -f fr.gmo && /usr/bin/msgfmt -c --statistics -o fr.gmo fr.po
272 translated messages, 18 fuzzy translations, 3 untranslated messages.
/usr/bin/msgmerge --update rw.po jtag.pot
............................................... done.
rm -f rw.gmo && /usr/bin/msgfmt -c --statistics -o rw.gmo rw.po
3 translated messages, 226 fuzzy translations, 64 untranslated messages.
/usr/bin/msgmerge --update sk.po jtag.pot
................................................ done.
rm -f sk.gmo && /usr/bin/msgfmt -c --statistics -o sk.gmo sk.po
272 translated messages, 18 fuzzy translations, 3 untranslated messages.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/po'
touch stamp-po
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/po'
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag'
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag'

OK.
無事コンパイル通るようになった。
というわけで make install を実行。


root@bt:~/cvs-work/JTAGTOOL/jtag# make install
Making install in libbrux
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making install in po
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make libbrux.pot-update
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
/usr/bin/xgettext --default-domain=libbrux --directory=.. \
          --add-comments=TRANSLATORS: --keyword=_ --keyword=N_ \
          --files-from=./POTFILES.in \
          --copyright-holder='ETC s.r.o.' \
          --msgid-bugs-address='marcel@telka.sk'
test ! -f libbrux.po || { \
          if test -f ./libbrux.pot; then \
            sed -f remove-potcdate.sed < ./libbrux.pot > libbrux.1po && \
            sed -f remove-potcdate.sed < libbrux.po > libbrux.2po && \
            if cmp libbrux.1po libbrux.2po >/dev/null 2>&1; then \
              rm -f libbrux.1po libbrux.2po libbrux.po; \
            else \
              rm -f libbrux.1po libbrux.2po ./libbrux.pot && \
              mv libbrux.po ./libbrux.pot; \
            fi; \
          else \
            mv libbrux.po ./libbrux.pot; \
          fi; \
        }
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
test -z "" || make
touch stamp-po
/bin/sh @MKINSTALLDIRS@ /usr/local/share
/bin/sh: @MKINSTALLDIRS@: No such file or directory
make[2]: *** [install-data-yes] Error 127
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make: *** [install-recursive] Error 1

あぁ、インストールが通らない。
Path が違うみたいなので、とりあえず直接指定してみる。


root@bt:~/cvs-work/JTAGTOOL/jtag# vi ./libbrux/po/Makefile

下記の内容に修正。


prefix = /usr/local
exec_prefix = ${prefix}
datadir = ${prefix}/share
localedir = $(datadir)/locale
gettextsrcdir = $(datadir)/gettext/po

INSTALL = /usr/bin/install -c
INSTALL_DATA = ${INSTALL} -m 644
#MKINSTALLDIRS = @MKINSTALLDIRS@
MKINSTALLDIRS = $(top_builddir)/../tools/mkinstalldirs
mkinstalldirs = $(SHELL) $(MKINSTALLDIRS)

GMSGFMT = /usr/bin/msgfmt
MSGFMT = /usr/bin/msgfmt

今度こそ。


root@bt:~/cvs-work/JTAGTOOL/jtag# make install
Making install in libbrux
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making install in po
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make libbrux.pot-update
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
/usr/bin/xgettext --default-domain=libbrux --directory=.. \
          --add-comments=TRANSLATORS: --keyword=_ --keyword=N_ \
          --files-from=./POTFILES.in \
          --copyright-holder='ETC s.r.o.' \
          --msgid-bugs-address='marcel@telka.sk'
test ! -f libbrux.po || { \
          if test -f ./libbrux.pot; then \
            sed -f remove-potcdate.sed < ./libbrux.pot > libbrux.1po && \
            sed -f remove-potcdate.sed < libbrux.po > libbrux.2po && \
            if cmp libbrux.1po libbrux.2po >/dev/null 2>&1; then \
              rm -f libbrux.1po libbrux.2po libbrux.po; \
            else \
              rm -f libbrux.1po libbrux.2po ./libbrux.pot && \
              mv libbrux.po ./libbrux.pot; \
            fi; \
          else \
            mv libbrux.po ./libbrux.pot; \
          fi; \
        }
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
test -z "" || make
touch stamp-po
/bin/sh ../../tools/mkinstalldirs /usr/local/share
if test "libbrux" = "gettext-tools"; then \
          /bin/sh ../../tools/mkinstalldirs /usr/local/share/gettext/po; \
          for file in Makefile.in.in remove-potcdate.sin quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot   Makevars.template; do \
            /usr/bin/install -c -m 644 ./$file \
                            /usr/local/share/gettext/po/$file; \
          done; \
          for file in Makevars; do \
            rm -f /usr/local/share/gettext/po/$file; \
          done; \
        else \
          : ; \
        fi
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux/po'
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/libbrux'
Making install in doc
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/doc'
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/doc'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/doc'
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/doc'
Making install in include
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/include'
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/include'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/include'
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/include'
Making install in data
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/data'
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/data'
make[2]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/share/jtag" || /bin/mkdir -p "/usr/local/share/jtag"
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'MANUFACTURERS' '/usr/local/share/jtag/MANUFACTURERS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'altera/PARTS' '/usr/local/share/jtag/altera/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'altera/ep1c20f400/STEPPINGS' '/usr/local/share/jtag/altera/ep1c20f400/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'altera/ep1c20f400/ep1c20f400' '/usr/local/share/jtag/altera/ep1c20f400/ep1c20f400'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'altera/epm7128aetc100/STEPPINGS' '/usr/local/share/jtag/altera/epm7128aetc100/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'altera/epm7128aetc100/epm7128aetc100' '/usr/local/share/jtag/altera/epm7128aetc100/epm7128aetc100'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'atmel/PARTS' '/usr/local/share/jtag/atmel/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'atmel/atmega128/STEPPINGS' '/usr/local/share/jtag/atmel/atmega128/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'atmel/atmega128/atmega128' '/usr/local/share/jtag/atmel/atmega128/atmega128'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'broadcom/PARTS' '/usr/local/share/jtag/broadcom/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'broadcom/bcm1250/STEPPINGS' '/usr/local/share/jtag/broadcom/bcm1250/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'broadcom/bcm1250/bcm1250' '/usr/local/share/jtag/broadcom/bcm1250/bcm1250'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'broadcom/bcm3310/STEPPINGS' '/usr/local/share/jtag/broadcom/bcm3310/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'broadcom/bcm3310/bcm3310' '/usr/local/share/jtag/broadcom/bcm3310/bcm3310'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'broadcom/bcm5421s/STEPPINGS' '/usr/local/share/jtag/broadcom/bcm5421s/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'broadcom/bcm5421s/bcm5421s' '/usr/local/share/jtag/broadcom/bcm5421s/bcm5421s'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'dec/PARTS' '/usr/local/share/jtag/dec/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'dec/sa1100/STEPPINGS' '/usr/local/share/jtag/dec/sa1100/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'dec/sa1100/sa1100' '/usr/local/share/jtag/dec/sa1100/sa1100'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'hitachi/PARTS' '/usr/local/share/jtag/hitachi/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'hitachi/hd64465/hd64465' '/usr/local/share/jtag/hitachi/hd64465/hd64465'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'hitachi/sh7727/STEPPINGS' '/usr/local/share/jtag/hitachi/sh7727/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'hitachi/sh7727/sh7727' '/usr/local/share/jtag/hitachi/sh7727/sh7727'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'hitachi/sh7729/STEPPINGS' '/usr/local/share/jtag/hitachi/sh7729/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'hitachi/sh7729/sh7729' '/usr/local/share/jtag/hitachi/sh7729/sh7729'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'ibm/PARTS' '/usr/local/share/jtag/ibm/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'ibm/ppc440gx/STEPPINGS' '/usr/local/share/jtag/ibm/ppc440gx/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'ibm/ppc440gx/ppc440gx' '/usr/local/share/jtag/ibm/ppc440gx/ppc440gx'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'intel/PARTS' '/usr/local/share/jtag/intel/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'intel/pxa250/STEPPINGS' '/usr/local/share/jtag/intel/pxa250/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'intel/pxa250/pxa250' '/usr/local/share/jtag/intel/pxa250/pxa250'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'intel/pxa250/pxa250c0' '/usr/local/share/jtag/intel/pxa250/pxa250c0'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'intel/sa1110/STEPPINGS' '/usr/local/share/jtag/intel/sa1110/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'intel/sa1110/sa1110' '/usr/local/share/jtag/intel/sa1110/sa1110'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'intel/ixp425/STEPPINGS' '/usr/local/share/jtag/intel/ixp425/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'intel/ixp425/ixp425' '/usr/local/share/jtag/intel/ixp425/ixp425'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'lattice/PARTS' '/usr/local/share/jtag/lattice/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'lattice/lc4032v-tqfp48/STEPPINGS' '/usr/local/share/jtag/lattice/lc4032v-tqfp48/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'lattice/lc4032v-tqfp48/lc4032v-tqfp48' '/usr/local/share/jtag/lattice/lc4032v-tqfp48/lc4032v-tqfp48'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'lattice/m4a3-256.192-fpbga256/STEPPINGS' '/usr/local/share/jtag/lattice/m4a3-256.192-fpbga256/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'lattice/m4a3-256.192-fpbga256/m4a3-256.192-fpbga256' '/usr/local/share/jtag/lattice/m4a3-256.192-fpbga256/m4a3-256.192-fpbga256'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'lattice/m4a3-64.32-tqfp48/STEPPINGS' '/usr/local/share/jtag/lattice/m4a3-64.32-tqfp48/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'lattice/m4a3-64.32-tqfp48/m4a3-64.32-tqfp48' '/usr/local/share/jtag/lattice/m4a3-64.32-tqfp48/m4a3-64.32-tqfp48'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'motorola/mpc8245/1.2' '/usr/local/share/jtag/motorola/mpc8245/1.2'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'philips/PARTS' '/usr/local/share/jtag/philips/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'philips/xcr3128xl-cs144/STEPPINGS' '/usr/local/share/jtag/philips/xcr3128xl-cs144/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'philips/xcr3128xl-cs144/xcr3128xl-cs144' '/usr/local/share/jtag/philips/xcr3128xl-cs144/xcr3128xl-cs144'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'philips/xcr3128xl-vq100/STEPPINGS' '/usr/local/share/jtag/philips/xcr3128xl-vq100/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'philips/xcr3128xl-vq100/xcr3128xl-vq100' '/usr/local/share/jtag/philips/xcr3128xl-vq100/xcr3128xl-vq100'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'samsung/s3c4510b/s3c4510b' '/usr/local/share/jtag/samsung/s3c4510b/s3c4510b'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'sharp/PARTS' '/usr/local/share/jtag/sharp/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'sharp/lh7a400/STEPPINGS' '/usr/local/share/jtag/sharp/lh7a400/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'sharp/lh7a400/lh7a400' '/usr/local/share/jtag/sharp/lh7a400/lh7a400'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'toshiba/PARTS' '/usr/local/share/jtag/toshiba/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'toshiba/tx4925/STEPPINGS' '/usr/local/share/jtag/toshiba/tx4925/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'toshiba/tx4925/tx4925' '/usr/local/share/jtag/toshiba/tx4925/tx4925'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'toshiba/tx4926/STEPPINGS' '/usr/local/share/jtag/toshiba/tx4926/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'toshiba/tx4926/tx4926' '/usr/local/share/jtag/toshiba/tx4926/tx4926'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/PARTS' '/usr/local/share/jtag/xilinx/PARTS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xcr3032xl-vq44/STEPPINGS' '/usr/local/share/jtag/xilinx/xcr3032xl-vq44/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xcr3032xl-vq44/xcr3032xl-vq44' '/usr/local/share/jtag/xilinx/xcr3032xl-vq44/xcr3032xl-vq44'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xcr3128xl-cs144/STEPPINGS' '/usr/local/share/jtag/xilinx/xcr3128xl-cs144/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xcr3128xl-cs144/xcr3128xl-cs144' '/usr/local/share/jtag/xilinx/xcr3128xl-cs144/xcr3128xl-cs144'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xcr3128xl-vq100/xcr3128xl-vq100' '/usr/local/share/jtag/xilinx/xcr3128xl-vq100/xcr3128xl-vq100'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xcr3256xl-ft256/STEPPINGS' '/usr/local/share/jtag/xilinx/xcr3256xl-ft256/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xcr3256xl-ft256/xcr3256xl-ft256' '/usr/local/share/jtag/xilinx/xcr3256xl-ft256/xcr3256xl-ft256'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xc2c256-tq144/STEPPINGS' '/usr/local/share/jtag/xilinx/xc2c256-tq144/STEPPINGS'
 /bin/sh /root/cvs-work/JTAGTOOL/jtag/tools/install-sh -c -m 644 'xilinx/xc2c256-tq144/xc2c256-tq144' '/usr/local/share/jtag/xilinx/xc2c256-tq144/xc2c256-tq144'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/data'
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/data'
Making install in src
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
Making install in lib
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/lib'
Making install in tap
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/tap'
Making install in part
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/part'
Making install in bus
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/bus'
Making install in cmd
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src/cmd'
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
make[3]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/src'
test -z "/usr/local/bin" || /bin/mkdir -p "/usr/local/bin"
  /usr/bin/install -c 'jtag' '/usr/local/bin/jtag'
  /usr/bin/install -c 'bsdl2jtag' '/usr/local/bin/bsdl2jtag'
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src'
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src'
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/src'
Making install in po
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag/po'
/bin/sh ../tools/mkinstalldirs /usr/local/share
installing fi.gmo as /usr/local/share/locale/fi/LC_MESSAGES/jtag.mo
installing fr.gmo as /usr/local/share/locale/fr/LC_MESSAGES/jtag.mo
installing rw.gmo as /usr/local/share/locale/rw/LC_MESSAGES/jtag.mo
installing sk.gmo as /usr/local/share/locale/sk/LC_MESSAGES/jtag.mo
if test "jtag" = "gettext-tools"; then \
          /bin/sh ../tools/mkinstalldirs /usr/local/share/gettext/po; \
          for file in Makefile.in.in remove-potcdate.sin quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot   Makevars.template; do \
            /usr/bin/install -c -m 644 ./$file \
                            /usr/local/share/gettext/po/$file; \
          done; \
          for file in Makevars; do \
            rm -f /usr/local/share/gettext/po/$file; \
          done; \
        else \
          : ; \
        fi
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag/po'
make[1]: Entering directory `/root/cvs-work/JTAGTOOL/jtag'
make[2]: Entering directory `/root/cvs-work/JTAGTOOL/jtag'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag'
make[1]: Leaving directory `/root/cvs-work/JTAGTOOL/jtag'

無事、インストールまで完了したがBSDLファイルがコピーされていないらしいので、コピー


root@bt:~/cvs-work/JTAGTOOL/jtag# cp -R data/motorola/mpc8241 /usr/local/share/jtag/motorola/

これで、準備完了JTAGが起動できるか確認。


root@bt:~/cvs-work/JTAGTOOL/jtag# jtag

これで、準備完了JTAGが起動できるか確認。


JTAG Tools 0.6
Copyright (C) 2002, 2003 ETC s.r.o.
JTAG Tools is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
There is absolutely no warranty for JTAG Tools.

Warning: JTAG Tools may damage your hardware! Type "quit" to exit!

Type "help" for help.

jtag>

無事起動できたので次は本体にピンヘッダとかつけないとな。

[VS]Office AddinのインストーラがVSTOのインストールに失敗する

VisuatlStudio2010 + .NetFramework3.5でOffice2007のアドインを作成し、Setupを下記のサイトを参考に作成したときのメモ。

かなり役に立つので必読です。

上記の記事を参考にすることで、AddinとSetupがパッケージぽい形になるかと思います。
自分が作成した際には熟読してないがために下記の2点が抜けていました。

  • レジストリへ登録の作成
  • Inclusion Listへの登録処理作成

ちなみに起動条件の作成時にVSTOの日本語ランゲージパックを追加しようとしたのですがうまくいきませんでした。
Oracで取得したComponentIDが正しいかどうかすら確認できず、とりあえず、必須制限からはずしました。

VM上でインストーラのテストを行ったところインストールは完了するもののうまくアドインが動作しません。
ログを出すためにユーザー環境変数に以下の2つを追加しました。

  • VSTO_SUPPRESSDISPLAYALERTS:0
  • VSTO_LOGALERTS:1

(参考:アプリケーション レベルのプロジェクトのデバッグ

ログを追いかけてみてわかったことは2つありました。

  1. Setup.msiでは必須コンポーネントがインストールされない
  2. VSTO4.0ランゲージパックのダウンロードに失敗する

1つ目は、最初に示した参考サイト内にちゃんと書かれていました。

Setup.exe をダブルクリックしてソリューションをインストールする代わりに、.msi ファイルをダブルクリックしてソリューションをインストールする方法も選択できます。このモードでは、ユーザーはブートストラップを実行しません。そのため、セットアップは依存関係を検出できず、必要に応じた必須コンポーネントのインストールも行いません。

つまり、Setup.exeでインストールしないといけないということで、Setup.exeは必須コンポーネントインストール後にSetup.msiを実行すると。
といわけで、VisualStudioのSetupプロジェクトの「必須コンポーネント」プロパティはSetup.exeに作用するだけで、別途Setup.msiが必須コンポーネントの存在しない場合に起動しないようにするための起動条件は手動で作成しなければならないとのことです。しっかり読んでいたならこんなところでは引っかからなかったのでしょうが。

2つ目はインストーラのログを読んでVSTO4.0日本語ランゲージパックのダウンロードに失敗していました。
具体的には下記の2つのURLです。

  • http://go.microsoft.com/fwlink/?LinkId=158919&clcid=0x411
  • http://go.microsoft.com/fwlink/?LinkId=158920&clcid=0x411

上記のURLは確かにリダイレクト先が存在しないようで、このURLはどこで設定されているかを調べてみました。
その結果、レジストリの

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\GenericBootstrapper\3.5

に記載されているPath内(多分WindowsSDK内)にあるBootstrapperと呼ばれるものの中で定義されているようです。

実際に自分の環境のBootstrapper/VSTO4.0日本語ランゲージは

  • C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\VSTOR40\ja\package.xml

にURLが記載されていていました。

ここは、本来手を入れるべきではない場所でしたが実験でURLを下記のように書き換えてみたところ、無事インストールを成功させることができました。


--- before/package.xml
+++ after/package.xml
@@ -61,7 +61,7 @@
     Microsoft Visual Studio 2010 Tools for Office Runtime (x86 および x64) Language Pack - 日本語のインストール中にエラーが発生しました。
     http://go.microsoft.com/fwlink/?LinkId=158917
     http://go.microsoft.com/fwlink/?LinkId=158918
-    http://go.microsoft.com/fwlink/?LinkId=158919&clcid=0x411
-    http://go.microsoft.com/fwlink/?LinkId=158920&clcid=0x411
+    http://download.microsoft.com/download/8/D/1/8D139084-948F-45F7-A014-71A90E2572EC/vstor40_LP_x86_jpn.exe
+    http://download.microsoft.com/download/8/D/1/8D139084-948F-45F7-A014-71A90E2572EC/vstor40_LP_x64_jpn.exe
   
 

とりあえず、Microsoftからの修正がでるまではこの対応ではこの対応で乗り切れると思います。
たしか、VSTO3.0でも同様にv6.0A内のBootstrapperの日本語ランゲージへのURLも同じように存在しない場所を指してたような。
(参考:まなBlog)

それと、小さな注意点がありました。
Windows7で開発していたため、package.xmlを書き換えるには管理者権限が必要でした。
ふだん使っているエディタを管理者権限で起動しなおすのは手間だと思い、メモ帳を管理者権限で立ち上げ、URLを修正したのが問題となりました。
というのも、このpackage.xmlはUTF-8のBOMなし(UTF-8N)で作成されているのですが、Windows付属のメモ帳ではBOMありでUTF-8を保存してしまうようで、
Setupをリビルドした際に下記の警告が表示され、実際インストーラはランゲージパックをインストールしない挙動に変わってしまいました。


警告: カルチャ 'ja-JP' を項目 'Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64)' に対して一致できませんでした。カルチャ 'en' を使用します。

package.xmlをUTF-8Nで保存し、BOMがないことと文字化けしていないことを確認して再ビルドしたところ警告もなくなり、ランゲージパックのインストールも主なわれるようになりました。

また、今回は必要とならなかったけれど関連のある参考サイトもメモ

[C#]文字列整形関数

.Netframework 3.0 以降でなるだけ国・地域に依存しない感じで、文字の整形関数を考えてみた。
というのも、もともと用意されているPadLeftなどでは日本語の全角文字を使用するとずれてしまう。
ここでめんどくさいのが文字数と文字コードのバイト数ともに文字の表示数と一致しないこと。

全角文字はよく2バイト文字といわれていたが、Unicodeではそうならない。
表示上2バイト分(全角)でも、バイト数は3バイトとか4バイトも存在する。
もちろん、文字数でカウントしても全角文字は1文字として検出される。
つまり、3バイトの全角文字1文字をPadLeftで整形しようとしたときにめんどくささに気づくわけだ。

で、強引な方法で実装してみたのでメモ。
実際は、半角か全角かを検出できればいいから画面から取得なんて強引なことをしなくてもできそう。
でも、気がついた時にはすでに組み終わってたので、改良された方はトラックバックとかお願いします・・・。


//書式整形に使用するフォント
public Font fixedPitchFont;

public setFixedPitchFont()
{
    //書式整形に使用するフォントをユーザー環境に合わせて切り替える
    System.Globalization.CultureInfo ci = System.Threading.Thread.CurrentThread.CurrentCulture;
    if (ci.TextInfo.LCID == 1041)
    {
   	 //日本
   	 fixedPitchFont = new Font("MS ゴシック", SystemFonts.DefaultFont.SizeInPoints);
    }
    else
    {
   	 //その他("Courier New":マルチバイト時にずれる)
   	 fixedPitchFont = new Font(FontFamily.GenericMonospace, SystemFonts.DefaultFont.SizeInPoints);
    }
}

private void GetFontPitch()
{
    //描画サイズから1文字表示分の幅を取得する
    // 1. DPIから求める
    {
   	 //解像度の取得
   	 Font font20pixel = new Font(FontFamily.GenericMonospace, 20, GraphicsUnit.Pixel);
   	 int dpi = (int)Math.Round((72 * font20pixel.Size) / font20pixel.SizeInPoints);

   	 //固定幅はWidth:Height=1:2で作成されていることを前提として
   	 fixedPitchFontHeight = (int)Math.Ceiling(fixedPitchFont.SizeInPoints * dpi / 72);
   	 fixedPitchFontWidth = fixedPitchFontHeight / 2;
    }
    // 2. 念のため、描画してみた大きさから求めたものと比較する
    {
   	 //適当な大きさで描画用Bmpを作成(メインディスプレイの大きさで作成)
   	 Bitmap bmp = new Bitmap(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
   	 try
   	 {
   		 Graphics g = Graphics.FromImage(bmp);
   		 Size Size1word = TextRenderer.MeasureText(g, " ", fixedPitchFont);  //半角(1Word)
   		 Size Size2word = TextRenderer.MeasureText(g, "m1", fixedPitchFont); //全角(マルチバイト文字も表示上2Word)

   		 int wordWidth = Size2byte.Width - Size1byte.Width;
   		 int wordHeight = Size1byte.Height;

   		 //一致しない場合は固定幅フォントではない可能性がある。とりあえず大きい方を使う。
   		 if (fixedPitchFontWidth != wordWidth)
   		 {
   			 fixedPitchFontWidth = Math.Max(fixedPitchFontWidth, wordWidth);
   		 }
   		 if (fixedPitchFontWidth != wordWidth)
   		 {
   			 fixedPitchFontHeight = Math.Max(fixedPitchFontHeight, wordHeight);
   		 }
   	 }
   	 finally
   	 {
   		 bmp.Dispose();
   	 }
    }
}

public int Display1ByteWordCount(string text)
{
    int displayFontWidth;
    
    //適当な大きさで描画用Bmpを作成(メインディスプレイの大きさで作成)
    Bitmap bmp = new Bitmap(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
    Graphics g = Graphics.FromImage(bmp);
    Size stringSize = TextRenderer.MeasureText(g, text, fixedPitchFont);

    //表示に使用したpixelから文字数を逆算する。
    displayFontWidth = stringSize.Width / fixedPitchFontWidth + (int)Math.Round((double)(stringSize.Width % fixedPitchFontWidth) / 10);
    return displayFontWidth;
}

public string PaddingLeft(string text, int totalWidth)
{
    int diff = Display1ByteWordCount(text) - text.Length;
    return text.PadLeft(totalWidth - diff);
}

public string PaddingRight(string text, int totalWidth)
{
    int diff = Display1ByteWordCount(text) - text.Length;
    return text.PadRight(totalWidth - diff);
}

WindowsXPセキュリティ設定その2

Windows XPのセキュリティポリシー設定。パスワードは9文字ぐらいまではあっさりと解析できるという結果が出てるみたいなのでそれ以上15文字以上がおすすめ。

  • [スタートメニュー]->[コントロールパネル]->[管理者ツール]を開く
    コントロールパネル
  • [ローカルセキュリティポリシー]を開く
    ローカルセキュリティポリシー
  • [アカウント ポリシー]->[パスワードのポリシー]を開き、下記の設定を行う
    • パスワードの長さ:9文字以上
    • パスワードの有効期間:31日
    • パスワードの履歴を記録する:0 パスワード数
    • パスワードの要求する複雑さを満たす:有効

  • [ローカル ポリシー]->[セキュリティオプション]を開き、下記の設定を行う
    • アカウント:Administrator アカウントの状態:無効
    • アカウント:Guest アカウントの状態:無効
    • 対話型ログオン:最後のユーザー名を表示しない:有効


WindowsXPセキュリティ設定その1

Windows XPのセキュリティ強化設定をまとめたレジストリファイルを公開。
security.regをダウンロードして、実行

  • LanManagerハッシュの無効化
  • 管理者共有(隠し共有)の無効化
  • SMB署名を必須
  • アカウントおよびパスワードのキャッシュを無効化
  • AutoRunの無効化

MicrosoftUpdateが正しく適用されている場合、LMハッシュ無効とか特に設定する必要はないっぽい。
使用は自己責任で

RLOを利用した偽装ファイルへの対策

RLO(U+202E)とは、Right-Left OverrideというUnicodeで定義されている制御文字で文字をアラビア語のように右から左方向であることを示す文字で、
これを利用すると、ファイル名を偽装することが可能になるのでこの制御文字入りの実行ファイルを実行できないように制限した。
ここでは環境はXP Professionalを対象としているので、XP Home Editionの方は下方に掲載している参考サイトを参照。

  1. [スタートメニュー]->[コントロールパネル]->[管理者ツール]を開く
    コントロールパネル
  2. [ローカルセキュリティポリシー]を開く
    ローカルセキュリティポリシー
  3. [ソフトウェア制限のポリシー]配下が存在しない場合は右クリックで作成する
    新しいポリシーの作成
  4. [追加の規則]の上で右クリック->[新しいパスの規則…]を選択する
    追加の規則
  5. メモ帳を開き、”*”を2個入力し、その間にカーソルを移動し、右クリック->[Unicode制御文字の挿入]からRLOを入力する
    RLOルールの作成
  6. RLO入りの文字列をコピー&ペーストして、セキュリティレベルが「許可しない」になっていることを確認して「適用」
    RLOをコピー&ペースト

参考

AmazonSearchをHTMLで設置する

Amazonで作成したウィジェットではJavascriptが利用されるうえ、HTML構文エラーやデザイン的問題があったので、HTMLで実装してみた。
正しく動作するかまだ確認できてないが、とりあえず検索としてはちゃんと動いてるみたいなのでメモ。
以下、サイドメニューに追加したHTML構文


<dt>AmazonSearch</dt>
<dd>
<form action="http://www.amazon.co.jp/exec/obidos/external-search" method="get">
<fieldset>
<legend>
<label for="AmazonSearchKeyword">Amazon検索</label>
</legend>
<div>
<strong>サーチ:</strong>
<select id="searchDropdownBox" style="font-size: 0.8em;" title="次の中からサーチ" name="url">
<option selected="selected" value="search-alias=aps">すべてのカテゴリー</option>
<option value="search-alias=stripbooks">和書</option>
<option value="search-alias=english-books">洋書</option>
<option value="search-alias=dvd">DVD</option>
<option value="search-alias=popular">ミュージック</option>
<option value="search-alias=classical">クラシック音楽</option>
<option value="search-alias=mi">楽器</option>
<option value="search-alias=videogames">TVゲーム</option>
<option value="search-alias=software">PCソフト</option>
<option value="search-alias=electronics">家電&amp;カメラ</option>
<option value="search-alias=office-products">文房具・オフィス用品</option>
<option value="search-alias=kitchen">ホーム&amp;キッチン</option>
<option value="search-alias=food-beverage">食品&amp;飲料</option>
<option value="search-alias=hpc">ヘルス&amp;ビューティー</option>
<option value="search-alias=beauty">コスメ</option>
<option value="search-alias=baby">ベビー&amp;マタニティ</option>
<option value="search-alias=toys">おもちゃ</option>
<option value="search-alias=apparel">服&ファッション小物</option>
<option value="search-alias=shoes">シューズ&バッグ</option>
<option value="search-alias=jewelry">ジュエリー</option>
<option value="search-alias=watch">時計</option>
<option value="search-alias=sporting">スポーツ&amp;アウトドア</option>
<option value="search-alias=automotive">カー&バイク用品</option>
<option value="search-alias=diy">DIY・工具</option>
</select></div>
<div>
<input id="AmazonSearchKeyword" style="width: 10em; font-size: 0.8em;" name="AmazonSearchKeyword" type="text" />
<input name="tag" type="hidden" value="dambe-22" />
<input name="encoding-string-jp" type="hidden" value="日本語" />
<input style="vertical-align: middle;" name="Go" src="http://wms.assoc-amazon.jp/JP/img/go-rd-sec_tpng.png?tag=dambe-22" type="image" value="Go" /></div>
<div>
<a href="http://www.amazon.jp/?&amp;camp=759&amp;linkCode=wsw&amp;tag=dambe-22&amp;creative=3867">
<img style="border: none;" src="http://wms.assoc-amazon.jp/JP/img/amazon-logo-b_tpng.png" alt="Amazon.co.jpアソシエイト" />
</a></div></fieldset>
</form>
</dd>

mimo UM-740のインストール

同梱されているドライバCDは文字化けする上、UM-740が存在せず、UM-750となっており、
しかも、インストールを行うとAvira AntiVirに引っかかる危なさ。
これではまったくもって、信用できないため、Webから新しいドライバを入手してインストールした。

  • ドライバの入手
  • 注意
    グラフィックボードのドライバに依存してるため、グラフィックドライバのバージョンが古いとディスプレイアダプタのエラーを起こす場合がある。
    上手く動作しない場合は、グラフィックスドライバを更新してみること。

QEMUのコンパイル

QEMUの最新版がほしかったので自分でコンパイルしてみたときのメモ。

  • コンパイル環境構築
    • MinGW+MSYS+zlib
      1. 猫科研究パック(msys_felidlabo_a007.7z)をダウンロード
      2. msys_felidlabo_a007.7zを解凍し、作成されたmsysフォルダをc:/などマルチバイト文字およびスペースを含まないパスに格納(例:”c:/msys”)
      3. msys/_felidlabo/04_gccinstall.batを実行し、GCCをインストール
    • coreutils-ext
      1. coreutils-5.97-3-msys-1.0.13-ext.tar.lzmaをダウンロード
      2. coreutils-5.97-3-msys-1.0.13-ext.tar.lzmaを解凍し、binの中をmsys/bin/にコピー(pr.exeは上書きでよい)
        ※.tar.lzmaの解凍方法がわからない場合は、7-Zipを使用する
        ※coreutils-extを入れないとQEMUのmakeで下記のエラーとなる

        /pc-bios/optionrom/signrom.sh: line 31: * 512 - 1 
        : syntax error: operand expected (error token is "* 512 - 1 ")
        make[1]: *** [multiboot.bin] Error 1
        rm multiboot.o multiboot.raw multiboot.img
        make: *** [romsubdir-optionrom] Error 2
    • SDL
      1. SDL-1.2.14.zipをダウンロード
      2. SDL-1.2.14.zipを解凍し、SDL-1.2.14フォルダをmsys/src/へ移動
      3. msys/msys.batを起動し、下記のコマンドでSDLをコンパイル
        /src/SDL-1.2.14/configure --prefix=/mingw --disable-shared
        make
        make install
  • コンパイル
    1. qemu-0.12.4.tar.gzをダウンロード
    2. qemu-0.12.4.tar.gzを解凍し、qemu-0.12.4フォルダをmsys/へ移動
    3. msys/msys.batを起動し、下記のコマンドでQEMUをコンパイル
      mkdir /home/***/QEMU
      /qemu-0.12.4/configure --prefix=/home/***/QEMU --target-list=i386-softmmu
      make
      make install
    4. /msys/home/***/QEMU/にコンパイルされた実行ファイル等が格納されている

Ubuntu 10.04 でカーネル再構築

Ubuntu上でInfernoのカーネルをコンパイルするときに、

  1. /bin/sh: Argument list too long

というエラーでmkが完了しなかった。
xargsで分割できればいいんだけど、いまいち使い方がわからない。
というのもmkコマンドでmkfileを使うんだけど、その中身で
どうも、別ファイルを読み込んでその中をまた別のファイルに書かれてるスクリプトで
分割して、それを引数で渡してるみたいなんだけど、この場合どうやってxargsを使えばいいんだ?

仕方ないのでARG_MAX自体の値を増やすことにした。

カーネル再構築に必要なパッケージのインストール

  1. $sudo apt-get install build-essential
  2. $sudo apt-get install kernel-package libncurses5-dev libqt3-mt-dev

カーネルソースをインストールして展開

  1. $sudo apt-get install linux-source-2.6.32
  2. $cd /usr/src
  3. $sudo tar xvjf linux-source-2.6.32.tar.bz2

ソースの変更

  1. /usr/src/linux-source-2.6.32/include/linux/limits.hを開き、ARG_MAXを増やす

.config ファイルの作成

  1. $cd linux-source-2.6.32
  2. $sudo cp /boot/config-2.6.32-23-generic .config
  3. $sudo make oldconfig

パラメータの変更

  1. $sudo make menuconfig

Processor type and features ---> Processor familly ---> *Coer 2/newer Xeon
Timer frequency ---> *300 HZ
Device Drivers ---> ATA/ATAPI/MFM/RLL support ---> *generic ATA/ATAPI disk support
Device Drivers ---> ATA/ATAPI/MFM/RLL support ---> *ATA disk support

などを変更してSave Configuration to an Alternate Fileで変更を保存。
出来上がった .config ファイルの中を開いて、
以下のものが「M」ではなく「y」になっているか確認する。

  • CONFIG_IDE
  • CONFIG_SCSI
  • CONFIG_EXT3

並列コンパイル設定(CPUは4つなので最大5つまでという設定にする)

  1. $sudo export CONCURRENCY_LEVEL=5

カーネルリビルド

  1. $sudo make-kpkg clean
  2. $sudo make-kpkg –initrd –revision=20100710 kernel_image kernel_headers

.debができるのでdpkgでインストール

  1. $cd ../
  2. $sudo dpkg -i linux-image-2.6.32.*****20100710_i386.deb
  3. $sudo dpkg -i linux-headers-2.6.32.*****20100710_i386.deb

再起動

  1. $sudo shutdown -r now

起動しない・・・

Kernel Panic:VFS:***

というエラー、とりあえず、再起動後Shiftキーを押しっぱなしにしてGRUB2のメニュー入って、
正常に動いていたバージョンの起動設定と見比べてみるとinitrdの項が無いのが問題っぽい。
initrd作成

  1. $cd /boot/
  2. $sudo mkinitramfs -o initrd.img-2.6.32.***** 2.6.32

再起動後Shiftキーを押しっぱなしにして再度GRUB2のメニュー入って、
再構築したカーネルの項で”e”を押下で編集モードに入り末尾に

initrd /boot/initrd.img-2.6.32.*****

を追加して、Ctrl+xでなんとか起動できたっぽい。
GRUB2の変更は手動でやらないとだめなのかなぁ・・・。
そして、目的のARG_MAXの値を確認
$getconf ARG_MAX
で確認してみるも変わらない・・・。
カーネルが新しいのでもしかしてと重い
$sudo ulimit -Ss
を実行したところ、増えた。
結局、カーネルコンパイルしなくてよかったみたいなので、
今回作ったカーネルを削除して、今まで使ってたカーネルを利用。

増やしても、infernoのカーネルコンパイルエラーは発生する。
どうも作業してる方向がすでに間違っているようなので別の方法を探してみる。