Open Source WEB

5.0.10がリリースされたので、さっそくそちらを使うことにしよう。

ダウンロードし、展開してみたら、

-rw-r--r--    1 fuji     user            0  7月 23 04:45 EXCEPTIONS-CLIENT
-rw-r--r--    1 fuji     user            0  7月 23 04:45 INSTALL-SOURCE

ということになっていて、説明が載っている筈のファイルのサイズが0である。

以前のバージョンのときのコンパイル手順でできるだろうから、 「ソースからのインストール」の説明の最後の 再コンパイルして動作確認に従ってコンパイルしてみよう。

コンパイル(make)する前に、configureしなければならない。 このオプションが面倒であった。

今までとの違うところは、 デバッガでソースを追いかけながら調べようとしていることで、 そのためのデバッグオプションが必要である。 MySQLは、C,C++ で書かれていて、コンパイルには gcc が使われる。 gccは、Cだけでなく、C++ もコンパイル可能である。

デバッグオプションは、gcc では、 -g である。

configure時のオプションについては、MySQLのマニュアルの 2.8.2. Typical configure Optionsの後の方に

To configure MySQL with debugging code, use the --with-debug option:

shell> ./configure --with-debug

This causes a safe memory allocator to be included that can find
some errors and that provides output about what is happening.
See Section E.1, “Debugging a MySQL Server”.

とあるので、 --with-debug を追加すれば良いらしい。

configureのデバッグオプション  --with-debug

ということで、以下のようにして「デバッグ付き」でmakeまでを行なった。

shell$ ./configure --prefix=/usr/local/mysql --with-extra-charsets=complex --with-debug
shell$ make

インストール

インストールする前に、MySQLサーバが動いていたら止めておく。

shell$ /usr/local/mysql/bin/mysqladmin -u root shutdown

動いていなくても、このコマンドを実行して構わない。 実行中に、止めずにインストールしちゃったりすると、厄介なことになるので、 無駄にshutdownを行なっても全然構わないし、推奨すべきことである。

shell# make install
shell# cd /usr/local/mysql
shell# bin/mysql_install_db --user=mysql
shell# chown -R root  .
shell# chown -R mysql var
shell# chgrp -R mysql .
shell# bin/mysqld_safe --user=mysql &

make install の直後に

shell# cp support-files/my-medium.cnf /etc/my.cnf

を行なって、オプション設定ファイルを /etc にコピーするように説明には 書かれているが、ここではやっていない。


動作確認

さっそく mysqlクライアントコマンドを動かしてみよう。

shell$ mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 5.0.10-beta-debug-log
 
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
mysql> SELECT version();
+-----------------------+
| version()             |
+-----------------------+
| 5.0.10-beta-debug-log |
+-----------------------+
1 row in set (0.04 sec)
 
mysql>

デバッガを動かす前に、漢字がちゃんと使える、入力できることを確認しよう。

Emacs上で、shellを動かして、そこから漢字を入力したら、問題ないようだった。

mysql> SELECT '漢字';
SELECT '漢字';
+------+
| 漢字 |
+------+
| 漢字 |
+------+
1 row in set (0.00 sec)

mysql> 

しかし同じことを、gnome-terminalから実行し、 漢字を kinput2 で入力しようとすると、

まではできるのだが、この「漢字」が入らないのである。

Emacs では漢字が入る。

gnome-terminal + kinput2 では漢字は入らない。

configureのオプションが何か足りないようだ。


戻る:charset_infoはいつ変更されるか

次へ:kinput2からの入力を可能にするconfigureオプション


フィードバック:

Name:
Comment:

There is no comment.

このサイトは、 IPA の「平成15年度オープンソフトウエア活用基盤整備事業」 の委託事業として開発されたKahuaで試験的に運用しております。

Copyright (c) 2004-2007 株式会社タイムインターメディア About Us