Q4MをCentOS5.5 x86_64でRPM化してセットアップを楽にする
もうバイナリ版をcp -pするのは嫌だ、ということでRPM化してセットアップを楽にしたい。
手順は完全にzigorou先生の↓準拠
q4m を rpm 化する with checkinstall - Yet Another Hackadelic
MySQLのsrc.rpmを取得
# cd /usr/src/redhat/SRPMS # wget http://www.mysql.com/get/Downloads/MySQL-5.1/MySQL-community-5.1.50-1.rhel5.src.rpm/from/http://ftp.jaist.ac.jp/pub/mysql/
rpmbuild --recompile
ここもzigorouさんの通り…。必要なものは事前にyumでいれる。
# yum install gperf readline-devel ncurses-devel # rpmbuild --recompile --define 'community 1' /usr/src/redhat/SRPMS/MySQL-community-5.1.50-1.rhel5.src.rpm
Q4Mをrpm化
したいので、まずはcheckinstallを導入。
# cd /usr/local/src # wget http://asic-linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.2.tar.gz # tar xvzf checkinstall-1.6.2.tar.gz # cd checkinstall-1.6.2 # make # make install
MySQLをインストール
この手順はこちらを参考にした
Q4M on CentOS - dragon3の日記
# cd /usr/local/src # wget http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-server-community-5.1.50-1.rhel5.x86_64.rpm/from/http://ftp.iij.ad.jp/pub/db/mysql/ # wget http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-client-community-5.1.50-1.rhel5.x86_64.rpm/from/http://ftp.iij.ad.jp/pub/db/mysql/ # wget http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-devel-community-5.1.50-1.rhel5.x86_64.rpm/from/http://ftp.iij.ad.jp/pub/db/mysql/ # wget http://dev.mysql.com/get/Downloads/MySQL-5.1/MySQL-shared-community-5.1.50-1.rhel5.x86_64.rpm/from/http://ftp.iij.ad.jp/pub/db/mysql/ # rpm -ivh MySQL-*
そして本命Q4M。バージョンは最新版を使用。
libdirの指定をしないと/usr/lib下にインストールされてしまって、結局それをcpする必要がでたので、pluginを指定。maintainerはよしなに。
# cd /usr/local/src # wget http://q4m.31tools.com/dist/q4m-0.9.4.tar.gz # tar xfz q4m-0.9.4.tar.gz # cd q4m-0.9.4 >ERROR: ld.so: object '/usr/local/lib64/installwatch.so' from LD_PRELOAD cannot be preloaded: ignored. #上記エラー回避のため...checkinstallさん...これぐらいなんとかしていただきたい。 # ln -s /usr/local/lib/installwatch.so /usr/local/lib64/installwatch.so # ./configure --prefix=/usr --with-mysql=/usr/src/redhat/BUILD/mysql-5.1.50 --libdir=/usr/lib64/mysql/plugin # checkinstall -R --pkgname q4m --pkgversion 0.9.4 \ ---pkgrelease mysql_5.1.50 --pkggroup Applications/Databases \ --maintainer hoge@mail.com \ make install
できた!
********************************************************************** Done. The new package has been saved to /usr/src/redhat/RPMS/x86_64/q4m-0.9.4-mysql_5.1.50.x86_64.rpm You can install it in your system anytime using: rpm -i q4m-0.9.4-mysql_5.1.50.x86_64.rpm **********************************************************************
なんて長い道のりだったんだ…。インストール、そしてメッセージにでる通りQUEUEエンジンを有効にします。
# mysql -u root < support-files/install.sql INSTALL PLUGIN queue SONAME 'libqueue_engine.so'; CREATE FUNCTION queue_wait RETURNS INT SONAME 'libqueue_engine.so'; CREATE FUNCTION queue_end RETURNS INT SONAME 'libqueue_engine.so'; CREATE FUNCTION queue_abort RETURNS INT SONAME 'libqueue_engine.so'; CREATE FUNCTION queue_rowid RETURNS INT SONAME 'libqueue_engine.so'; CREATE FUNCTION queue_set_srcid RETURNS INT SONAME 'libqueue_engine.so';
後は動作確認ですが、割愛。
失敗編はこちら
★失敗編★Q4MをCentOS5.3 x86_64でRPM化してセットアップを楽に!しようと思ったらはまった - /var/log/dekaduki