tmux入れるときに色々エラーとか出たりしたのでその時のメモ

環境はこんな感じ

OS: CentOS 5.2
RPM: libevent-1.1a-3.2.1 インストール済み

yum install tmux

$ yum install tmux
Loaded plugins: rhnplugin
Excluding Packages in global exclude list
Finished
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package tmux.x86_64 0:1.6-1.el5.rf set to be updated
--> Processing Dependency: libevent-1.4.so.2()(64bit) for package: tmux
--> Finished Dependency Resolution
tmux-1.6-1.el5.rf.x86_64 from rpmforge has depsolving problems
  --> Missing Dependency: libevent-1.4.so.2()(64bit) is needed by package tmux-1.6-1.el5.rf.x86_64 (rpmforge)
Error: Missing Dependency: libevent-1.4.so.2()(64bit) is needed by package tmux-1.6-1.el5.rf.x86_64 (rpmforge)
 You could try using --skip-broken to work around the problem
 You could try running: package-cleanup --problems
                        package-cleanup --dupes
                        rpm -Va --nofiles --nodigest
The program package-cleanup is found in the yum-utils package.

ふええ〜
仕方ないのでlibeventをsourceでインストール

libevent

$ wget http://downloads.sourceforge.net/project/levent/libevent/libevent-2.0/libevent-2.0.19-stable.tar.gz
$ tar xzf libevent-2.0.19-stable.tar.gz
$ cd libevent-2.0.19-stable
$ ./configure
$ make -j8
$ make install

$ # ls /usr/local/lib
libdrac.a              libevent_core-2.0.so.5      libevent_extra-2.0.so.5.1.7    libevent_openssl.a              libevent_pthreads.la
libevent-2.0.so.5      libevent_core-2.0.so.5.1.7  libevent_extra.a               libevent_openssl.la             libevent_pthreads.so
libevent-2.0.so.5.1.7  libevent_core.a             libevent_extra.la              libevent_openssl.so             pkgconfig
libevent.a             libevent_core.la            libevent_extra.so              libevent_pthreads-2.0.so.5
libevent.la            libevent_core.so            libevent_openssl-2.0.so.5      libevent_pthreads-2.0.so.5.1.7
libevent.so            libevent_extra-2.0.so.5     libevent_openssl-2.0.so.5.1.7  libevent_pthreads.a

$ ldconfig -p でlibeventが出てくればOK、出てこなければ
$ echo /usr/local/lib >> /etc/ld.so.conf
$ ldconfig -p して表示されればOK

サーバで ldconfig 打つ怖さ

tmux

$ wget http://downloads.sourceforge.net/project/tmux/tmux/tmux-1.6/tmux-1.6.tar.gz
$ tar tmux-1.6.tar.gz
$ cd tmux-1.6
$ ./configure
$ make -j8 

...
server.o: In function `server_start':
server.c:(.text+0x223): undefined reference to `event_reinit'
status.o: In function `status_job_callback':
status.c:(.text+0x27bb): undefined reference to `evbuffer_get_length'
status.c:(.text+0x27f2): undefined reference to `evbuffer_pullup'
tty-keys.o: In function `tty_keys_next':
tty-keys.c:(.text+0x452): undefined reference to `evbuffer_pullup'
tty-keys.c:(.text+0x46a): undefined reference to `evbuffer_get_length'
window.o: In function `window_pane_read_callback':
window.c:(.text+0x403f): undefined reference to `evbuffer_get_length'
window.c:(.text+0x408b): undefined reference to `evbuffer_pullup'
window.c:(.text+0x40c4): undefined reference to `evbuffer_get_length'
collect2: ld はステータス 1 で終了しました
make: *** [tmux] エラー 1

エラー出る。さっきインストールしたlibeventのライブラリ読み込ませる

$ ./configure LDFLAGS=-L/usr/local/lib/
$ make -j8

エラー出ない

$ make install

インストールできた

という感じ。

MySQLのデータサンプルとして郵便番号のデータを入れる

日本郵便:郵便番号データの説明

日本郵便
こういう実用性の高いデータを公開してくれているのは
本当にありがたいですよね。

サンプルデータ取得

$ wget http://www.post.japanpost.jp/zipcode/dl/kogaki/lzh/ken_all.lzh

lzhなのでlhaとか必要

全国の郵便番号のデータをダウンロード。
スペック低いようだったら各都道府県のに限定してもいいかも。

$ lha x ken_all.lzh
$ nkf -g ken_all.csv 
Shift_JIS (CR)

Shift JISなのでUTF-8に変換。

$ nkf -w --overwrite ken_all.csv
$ nkf -g ken_all.csv
UTF-8 (CR)

MySQLで読み込む

参考:MySQL に郵便番号データをインポート

mysql> CREATE DATABASE yuubin CHARACTER SET utf8; 
mysql> use yuubin;
mysql> CREATE TABLE zipcode (
PublicCode char(5) NOT NULL,
OldZipCode char(5) NOT NULL,
ZipCode char(7) NOT NULL,
PrefectureKana varchar(10),
CityKana varchar(100),
TownKana varchar(100),
Prefecture varchar(10),
City varchar(200),
Town varchar(200),
TownDivideFlg tinyint(1),
KoazaBanchiFlg tinyint(1),
TyoumeFlg tinyint(1),
HasSomeTownFlg tinyint(1),
UpdateState tinyint(1),
UpdateReson tinyint(1),
PRIMARY KEY (ZipCode)
);
mysql> LOAD DATA INFILE './ken_all.csv' IGNORE INTO TABLE zipcode FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"';
mysql> 
mysql> SELECT * FROM zipcode LIMIT 10 ;
+------------+------------+---------+--------------------+--------------------------+------------------------------------------+------------+-----------------+--------------------------------------+---------------+----------------+-----------+----------------+-------------+-------------+
| PublicCode | OldZipCode | ZipCode | PrefectureKana     | CityKana                 | TownKana                                 | Prefecture | City            | Town                                 | TownDivideFlg | KoazaBanchiFlg | TyoumeFlg | HasSomeTownFlg | UpdateState | UpdateReson |
+------------+------------+---------+--------------------+--------------------------+------------------------------------------+------------+-----------------+--------------------------------------+---------------+----------------+-----------+----------------+-------------+-------------+
| 01102      | 001        | 0010000 | ホッカイドウ       | サッポロシキタク         | イカニケイサイガナイバアイ               | 北海道     | 札幌市北区      | 以下に掲載がない場合                 |             0 |              0 |         0 |              0 |           0 |           0 | 
| 01102      | 001        | 0010010 | ホッカイドウ       | サッポロシキタク         | キタ10ジョウニシ(1-4チョウメ)            | 北海道     | 札幌市北区      | 北十条西(1〜4丁目)               |             1 |              0 |         1 |              0 |           0 |           0 | 
| 01102      | 001        | 0010011 | ホッカイドウ       | サッポロシキタク         | キタ11ジョウニシ(1-4チョウメ)            | 北海道     | 札幌市北区      | 北十一条西(1〜4丁目)             |             1 |              0 |         1 |              0 |           0 |           0 | 
| 01102      | 001        | 0010012 | ホッカイドウ       | サッポロシキタク         | キタ12ジョウニシ(1-4チョウメ)            | 北海道     | 札幌市北区      | 北十二条西(1〜4丁目)             |             1 |              0 |         1 |              0 |           0 |           0 | 
| 01102      | 001        | 0010013 | ホッカイドウ       | サッポロシキタク         | キタ13ジョウニシ(1-4チョウメ)            | 北海道     | 札幌市北区      | 北十三条西(1〜4丁目)             |             1 |              0 |         1 |              0 |           0 |           0 | 
+------------+------------+---------+--------------------+--------------------------+------------------------------------------+------------+-----------------+--------------------------------------+---------------+----------------+-----------+----------------+-------------+-------------+
10 rows in set (0.00 sec)
mysql> 
mysql> SELECT CityKana FROM zipcode WHERE ZipCode = 2480006;
+-----------------+
| CityKana        |
+-----------------+
| カマクラシ      |
+-----------------+
1 row in set (0.17 sec)

mysql> 

という感じでSQLのコマンドの練習とかに使える感じです。