[Up]

村瀬の作業記録〜2004年4月〜

いろいろ記録しておこう。


< 前の記録 | 次の記録 > | 最近5日間 >>

2004年4月12日(月)

ld-linux.so.2

実行時リンカ?を複数にしたい。
$ cd /usr/local/i386-pc/bin
$ ./gcc -v
Reading specs from ./../lib/gcc-lib/i686-pc-linux-gnu/3.3.2/specs
Configured with: ../gcc-3.3.2/configure --prefix=/usr/local/i386-pc --disable-nls --with-newlib --enable-languages=c
Thread model: posix
gcc version 3.3.2
$ ./gcc -dumpspecs
(snip)

*link:
%{!static:--eh-frame-hdr} -m elf_i386 %{shared:-shared}   %{!shared:     %{!ibcs:       %{!static: 	%{rdynamic:-export-dynamic} 	%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} 	%{static:-static}}}

(snip)
ここの/lib/ld-linux.so.2を/usr/local/i386-pc/lib/ld-linux.so.2に書き換えてしまえば楽なのだな。

2004年4月13日(火)

Intel PRO/Wireless 2100 Driver for Linux

_ kernel rebuild: kernelソースを準備する。自前でコンパイルして動くことを確認する。 私は USAGI projectのusagi-linux24-s20040412.tar.bz2を使用した。

$ tar -jxvf usagi-linux24-s20040412.tar.bz2
$ mv usagi usagi-linux24-s20040412
$ cd usagi-linux24-s20040412
$ make TARGET=linux24 prepare
$ cd kernel/linux24
$ vi Makefile # EXTRAVERSION = -rc1u2
$ cp /boot/2.4.26-rc1u2.config .config
$ make oldconfig
$ make dep && make bzImage && make modules
# VVV=2.4.26-rc1u2
# cp arch/i386/boot/bzImage /boot/bzImage-$VVV
# cp System.map /boot/System.map-$VVV
# cp vmlinux /boot/vmlinux-$VVV
# cp .config /boot/$VVV.config
# make INSTALL_MOD_PATH=/ modules_install
grub.confに追加。
title bzImage-2.4.26-rc1u2
        root (hd0,4)
        kernel /bzImage-2.4.26-rc1u2 ro root=/dev/hda6 hdc=ide-scsi vga=0x317
再起動して動くことを確認。

_ 無線ドライバ: ipw2100-0.40-pre2.tgzを Intel PRO/Wireless 2100 Driver for Linuxよりダウンロード。

$ cd usagi-linux24-s20040412/kernel/linux24
$ cd drivers/net/wireless
$ tar -zxvf ~/ipw2100-0.40-pre2.tgz
$ mv ipw2100-0.40-pre2 ipw2100
$ cd usagi-linux24-s20040412/kernel/linux24
$ make oldconfig
こんな感じ。
CONFIG_IPW2100=m
CONFIG_IPW2100_LEGACY_FW_LOAD=y
# CONFIG_IPW2100_NOWEP is not set
# CONFIG_IPW2100_DEBUG is not set
CONFIG_IPW2100_AVERATEC_5100P=m
再構築とインストール
$ make dep && make bzImage && make modules
$ su
# VVV=2.4.26-rc1u2
# cp arch/i386/boot/bzImage /boot/bzImage-$VVV
# cp System.map /boot/System.map-$VVV
# cp vmlinux /boot/vmlinux-$VVV
# cp .config /boot/$VVV.config
# make INSTALL_MOD_PATH=/ modules_install
#
# reboot

_ hostap: WEPのために必要になる Host AP driver for Intersil Prism2/2.5/3 and WPA Supplicant。 hostap-driver-0.1.3.tar.gzを使う。

$ tar -zxvf hostap-driver-0.1.3.tar.gz
$ cd hostap-driver-0.1.3
$ vi Makefile # KERNEL_PATH=/lib/modules/$(shell uname -r)/build
$ make
$ su
# make install
これで動くはず。
# modprobe ipw2100
# iwconfig eth1
Warning: Driver for device eth1 has been compiled with version 16
of Wireless Extension, while this program is using version 15.
Some things may be broken...

eth1      IEEE 802.11b  ESSID:"tsunami"  Nickname:"ipw2100"
          Mode:Managed  Frequency:2.484GHz  Access Point: 00:09:B7:7B:AF:77  
          Bit Rate=11Mb/s   Tx-Power=0 dBm   
          Retry:on   RTS thr=2304 B   Fragment thr:off
          Encryption key:off
          Link Quality:100/0  Signal level:-59 dBm  Noise level:-98 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

# lsmod 
Module                  Size  Used by    Not tainted
ipw2100                77256   2 
hostap                 96104   0  [ipw2100]
こんな感じ? これはつながっていない状態なので。


2004年4月17日(土)

chrootでFedora

Vineな環境でFedoraというか、違うバージョンのglibcな環境を動かす。 Vineはglibc-2.2.4. Fedora Core1はglibc-2.3.2.
# mkdir /fedora
# cd /fedora
# rpm2cpio /mnt/cdrom/Fedora/RPMS/bash-2.05b-31.i386.rpm | cpio -id
# rpm2cpio /mnt/cdrom/Fedora/RPMS/glibc-common-2.3.2-101.i386.rpm | cpio -id
# rpm2cpio /mnt/cdrom/Fedora/RPMS/glibc-2.3.2-101.i686.rpm | cpio -id
# rpm2cpio /mnt/cdrom/Fedora/RPMS/libtermcap-2.0.8-36.i386.rpm | cpio -id
# rpm2cpio /mnt/cdrom/Fedora/RPMS/popt-1.8.1-0.30.i386.rpm | cpio -id
# rpm2cpio /mnt/cdrom/Fedora/RPMS/elfutils-libelf-0.89-2.i386.rpm | cpio -id
# rpm2cpio /mnt/cdrom/Fedora/RPMS/beecrypt-3.0.1-0.20030630.1.i386.rpm | cpio -id
# rpm2cpio /mnt/cdrom/Fedora/RPMS/bzip2-libs-1.0.2-10.i386.rpm | cpio -id
# cd /
# chroot /fedora
bash-2.05b#
$ ls /fedora/install
MAKEDEV-3.3.8-2.i386.rpm
SysVinit-2.85-5.i386.rpm
basesystem-8.0-2.noarch.rpm
bash-2.05b-31.i386.rpm
beecrypt-3.0.1-0.20030630.1.i386.rpm
binutils-2.14.90.0.6-3.i386.rpm
bzip2-libs-1.0.2-10.i386.rpm
chkconfig-1.3.9-1.i386.rpm
coreutils-5.0-24.i386.rpm
cpp-3.3.2-1.i386.rpm
cracklib-2.7-23.i386.rpm
cracklib-dicts-2.7-23.i386.rpm
db4-4.1.25-14.i386.rpm
dev-3.3.8-2.i386.rpm
e2fsprogs-1.34-1.i386.rpm
elfutils-libelf-0.89-2.i386.rpm
ethtool-1.8-2.1.i386.rpm
fedora-release-1-3.i386.rpm
filesystem-2.2.1-5.i386.rpm
findutils-4.1.7-17.i386.rpm
gawk-3.1.3-3.i386.rpm
gcc-3.3.2-1.i386.rpm
gdbm-1.8.0-21.i386.rpm
glib-1.2.10-11.i386.rpm
glibc-2.3.2-101.i686.rpm
glibc-common-2.3.2-101.i386.rpm
glibc-devel-2.3.2-101.i386.rpm
glibc-headers-2.3.2-101.i386.rpm
glibc-kernheaders-2.4-8.36.i386.rpm
gpm-1.20.1-38.i386.rpm
grep-2.5.1-17.i386.rpm
gzip-1.3.3-11.i386.rpm
info-4.5-2.i386.rpm
initscripts-7.42-1.i386.rpm
iproute-2.4.7-11.i386.rpm
iputils-20020927-9.1.i386.rpm
less-378-11.1.i386.rpm
libacl-2.2.7-2.i386.rpm
libattr-2.4.1-2.i386.rpm
libgcc-3.3.2-1.i386.rpm
libstdc++-3.3.2-1.i386.rpm
libtermcap-2.0.8-36.i386.rpm
make-3.79.1-18.i386.rpm
mingetty-1.06-2.i386.rpm
mktemp-1.5.1-1.i386.rpm
modutils-2.4.25-13.i386.rpm
mount-2.11y-29.i386.rpm
ncurses-5.3-9.i386.rpm
net-tools-1.60-20.1.i386.rpm
pam-0.77-15.i386.rpm
pcre-4.4-1.i386.rpm
perl-5.8.1-92.i386.rpm
perl-Filter-1.29-8.i386.rpm
popt-1.8.1-0.30.i386.rpm
procps-2.0.17-1.i386.rpm
psmisc-21.3-2.RHEL.0.i386.rpm
rootfiles-7.2-6.noarch.rpm
rpm-4.2.1-0.30.i386.rpm
sed-4.0.8-1.i386.rpm
setup-2.5.27-1.1.noarch.rpm
shadow-utils-4.0.3-12.i386.rpm
sysklogd-1.4.1-13.i386.rpm
tar-1.13.25-12.i386.rpm
termcap-11.0.1-17.noarch.rpm
tzdata-2003d-1.noarch.rpm
util-linux-2.11y-29.i386.rpm
which-2.16-1.i386.rpm
words-2-21.noarch.rpm
zlib-1.2.0.7-2.i386.rpm
bash-2.05b# cd /install
bash-2.05b# rpm -Uvh *
警告: MAKEDEV-3.3.8-2.i386.rpm: V3 DSA signature: NOKEY, key ID 4f2a6fd2
警告: basesystem-8.0-2.noarch.rpm: V3 DSA signature: NOKEY, key ID db42a60e
エラー: failed to open /etc/mtab: そのようなファイルやディレクトリはありません
Preparing...                ########################################### [100%]
   1:libgcc                 ########################################### [  1%]
   2:setup                  ########################################### [  3%]
   3:filesystem             ########################################### [  4%]
   4:basesystem             ########################################### [  6%]
   5:tzdata                 ########################################### [  7%]
   6:glibc-common           ########################################### [  9%]
   7:glibc                  警告: /etc/ld.so.conf created as /etc/ld.so.conf.rpmnew
警告: /etc/localtime created as /etc/localtime.rpmnew
警告: /etc/nsswitch.conf created as /etc/nsswitch.conf.rpmnew
警告: /etc/rpc saved as /etc/rpc.rpmorig
警告: /usr/lib/gconv/gconv-modules created as /usr/lib/gconv/gconv-modules.rpmnew
########################################### [ 10%]
   8:mktemp                 ########################################### [ 12%]
   9:chkconfig              ########################################### [ 13%]
  10:shadow-utils           ########################################### [ 14%]
  11:cracklib               ########################################### [ 16%]
  12:popt                   ########################################### [ 17%]
  13:zlib                   ########################################### [ 19%]
  14:beecrypt               ########################################### [ 20%]
  15:bzip2-libs             ########################################### [ 22%]
  16:e2fsprogs              ########################################### [ 23%]
  17:elfutils-libelf        ########################################### [ 25%]
  18:ethtool                ########################################### [ 26%]
  19:gdbm                   ########################################### [ 28%]
  20:glib                   ########################################### [ 29%]
  21:iputils                ########################################### [ 30%]
  22:libattr                ########################################### [ 32%]
  23:libacl                 ########################################### [ 33%]
  24:libstdc++              ########################################### [ 35%]
  25:db4                    ########################################### [ 36%]
  26:mingetty               ########################################### [ 38%]
  27:mount                  ########################################### [ 39%]
  28:net-tools              ########################################### [ 41%]
  29:pcre                   ########################################### [ 42%]
  30:termcap                ########################################### [ 43%]
  31:libtermcap             ########################################### [ 45%]
  32:bash                   警告: /etc/skel/.bash_logout created as /etc/skel/.bash_logout.rpmnew
警告: /etc/skel/.bash_profile created as /etc/skel/.bash_profile.rpmnew
警告: /etc/skel/.bashrc created as /etc/skel/.bashrc.rpmnew
########################################### [ 46%]
  33:fedora-release         ########################################### [ 48%]
  34:iproute                ########################################### [ 49%]
  35:words                  ########################################### [ 51%]
  36:cracklib-dicts         ########################################### [ 52%]
  37:MAKEDEV                ########################################### [ 54%]
  38:rootfiles              ########################################### [ 55%]
  39:info                   ########################################### [ 57%]
  40:ncurses                ########################################### [ 58%]
  41:grep                   ########################################### [ 59%]
  42:sed                    ########################################### [ 61%]
  43:less                   ########################################### [ 62%]
  44:psmisc                 ########################################### [ 64%]
  45:binutils               ########################################### [ 65%]
  46:cpp                    ########################################### [ 67%]
  47:findutils              ########################################### [ 68%]
  48:coreutils              ########################################### [ 70%]
  49:pam                    ########################################### [ 71%]
  50:dev                    ########################################### [ 72%]
  51:which                  ########################################### [ 74%]
  52:SysVinit               ########################################### [ 75%]
  53:util-linux             ########################################### [ 77%]
  54:modutils               ########################################### [ 78%]
  55:procps                 ########################################### [ 80%]
  56:gawk                   ########################################### [ 81%]
  57:initscripts            ########################################### [ 83%]
  58:glibc-kernheaders      ########################################### [ 84%]
  59:glibc-headers          ########################################### [ 86%]
  60:glibc-devel            ########################################### [ 87%]
  61:gcc                    ########################################### [ 88%]
  62:gpm                    ########################################### [ 90%]
  63:gzip                   ########################################### [ 91%]
  64:make                   ########################################### [ 93%]
  65:perl                   ########################################### [ 94%]
  66:perl-Filter            ########################################### [ 96%]
  67:rpm                    警告: /etc/cron.daily/rpm created as /etc/cron.daily/rpm.rpmnew
警告: /etc/logrotate.d/rpm created as /etc/logrotate.d/rpm.rpmnew
########################################### [ 97%]
  68:sysklogd               ########################################### [ 99%]
  69:tar                    ########################################### [100%]
bash-2.05b# exit
# chroot /fedora
# useradd murase
# exit
$ cat bin/fedora
#! /bin/sh
grep /fedora/proc /proc/mounts > /dev/null || sudo mount --bind /proc /fedora/proc
sudo /usr/sbin/chroot /fedora su - murase
$ bin/fedora
$

2004年4月21日(水)

emacs

emacsでTABのインデント量というかサイズというか幅を変えるには
(setq default-tab-width 8)
とか
(setq tab-width 8)
とかする。一時的にかえるなら
M-x set-variable
Set variable: tab-width
Set tab-width to value: 8
と言う基本的なことをしらないなあ。

katsunori.murase@nifty.ne.jp