MyOSS mysqlクライアントにシステムのreadlineライブラリを使用させる方法

※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

GNU reeadlineライブラリは、コマンドラインにて過去に実行したコマンドの履歴表示や編集を可能にするライブラリである。mysqlクライアントにおいてもこのライブラリを使用することで、上記のような操作が可能となっている。

MySQLをソースからコンパイルして使用する場合、configure時のオプション --with-readline, --without-readlineの指定の仕方によって、mysqlクライアントに、システムのreadlineライブラリを使用させるか、MySQLのソースツリーにバンドルされているreadlineライブラリを使用させるかを選ぶことが出来る。バイナリ版、及び、デフォルトのビルドスクリプトでは--with-readlineが使用されている。

  • --with-readlineを使用した場合
cmd-line-client/readlineディレクトリバンドルされているソースからコンパイルされ作成されるlibreadline.aにmysqlクライアントがリンクされる。

  • --without-readlineを使用した場合
client/Makefileのmysql_LDADDに-l readline が指定され、システムのlibreadline.aがリンク時に使用される。gccの-lオプションは-l ライブラリ名 とした場合、標準ライブラリのディレクトリリストの中からファイル名がlib ライブラリ名 .aというファイルを検索する。

なお、 bug#3982は、SuSE Linux 9.2 Professionalでは--without-readlineを指定し、システムのreadlineライブラリを使用することで回避できる(readline-5.0-12.i586.rpm、及びreadline-5.0-devel-5.0-1.2.i586.rpmがインストール済みの場合)。



名前:
コメント: