昨日 はしゃらっと流したcmakeした時のエラーについていくつか。
Could not find MySQL librariesと言われるけど、mysql-community-libsだけじゃなくてmysql-community-develも要求してくる
$ rpm -q mysql-community-libs mysql-community-libs-5.7.9-1.el6.x86_64 $ cmake . .. CMake Error at cmake/FindMySQL.cmake:105 (message): Could not find MySQL libraries; used /root/mysql-router-2.0.2/../mysql-server/lib;/usr/local/mysql/lib;/usr/local/mysql/lib;/usr/local/lib;/usr/lib/x86_64-linux-gnu;/usr/lib/i386-linux-gnu;/usr/lib64;/usr/lib .. $ sudo yum install -y mysql-community-devel $ cmake . .. -- Found MySQL Libraries 5.7.9; using /usr/lib64/mysql/libmysqlclient.so ..
しかもエラーメッセージに含んでるディレクトリー群がlib系のディレクトリーだから
Doxygenはなくても動く
$ cmake . .. CMake Warning at mysql_harness/cmake/Docs.cmake:27 (message): Doxygen not found, no documentation target will be created ..
コールスタック出すから必須なのかと思ったけど、よく見たら"CMake Warning"だった。
デフォルトではインストールされるディレクトリがMySQLっぽくない
$ sudo make install .. -- Install configuration: "" -- Up-to-date: /usr/local/include/mysql/mysqlrouter/config_parser.h -- Up-to-date: /usr/local/include/mysql/mysqlrouter/plugin.h -- Up-to-date: /usr/local/include/mysql/mysqlrouter/filesystem.h -- Up-to-date: /usr/local/include/mysql/mysqlrouter/loader.h -- Up-to-date: /usr/local/lib/libmysqlharness.a -- Up-to-date: /usr/local/lib/libmysqlharness.so.0 -- Up-to-date: /usr/local/lib/libmysqlharness.so -- Up-to-date: /usr/local/lib/mysqlrouter/logger.so -- Up-to-date: /usr/local/include/mysql/mysqlrouter/logger.h -- Up-to-date: /usr/local/lib/mysqlrouter/keepalive.so -- Up-to-date: /usr/local/lib/mysqlrouter/fabric_cache.so -- Up-to-date: /usr/local/include/mysql/mysqlrouter/fabric_cache.h -- Up-to-date: /usr/local/lib/mysqlrouter/routing.so -- Up-to-date: /usr/local/include/mysql/mysqlrouter/routing.h -- Up-to-date: /usr/local/share/doc/mysqlrouter/README.txt -- Up-to-date: /usr/local/share/doc/mysqlrouter/License.txt -- Up-to-date: /usr/local/share/doc/mysqlrouter/sample_mysqlrouter.ini -- Up-to-date: /usr/local/share/doc/mysqlrouter/sample_mysqlrouter.init -- Up-to-date: /usr/local/include/mysql/mysqlrouter/datatypes.h -- Up-to-date: /usr/local/include/mysql/mysqlrouter/utils.h -- Up-to-date: /usr/local/include/mysql/mysqlrouter/plugin_config.h -- Installing: //var -- Installing: //var/local -- Installing: //var/local/mysqlrouter -- Installing: //var/local/mysqlrouter/log -- Installing: //var -- Installing: //var/local -- Installing: //var/local/mysqlrouter -- Installing: //var/local/mysqlrouter/run -- Installing: /usr/local/etc -- Installing: /usr/local/etc/mysqlrouter -- Up-to-date: /usr/local/bin/mysqlrouter -- Up-to-date: /usr/local/lib/libmysqlrouter.so.1 -- Up-to-date: /usr/local/lib/libmysqlrouter.so
MySQL Community Serverは/usr/local/mysqlが全てのベースになってたけど、フツーのアプリケーションっぽく配置される。
* ライブラリー: /usr/local/lib
* ヘッダーファイル: /usr/local/include
* コンフィグ: /usr/local/etc
* ログとか: /var/local/mysqlrouter
うーん、/var/local/mysqlrouterは新しい。rpmだとどうなってるんだろ。
基本的にCentOS(なり、RHEL系は)7向け
MySQL :: Download MySQL Router
* まず、rpmは"Red Hat Enterprise Linux 7 / Oracle Linux 7"向けしかない。
* バイナリーの.tar.gzも"Linux - Generic (glibc 2.17)"なので、CentOS 6.xで動かすにはglibcを更新しないといけない。
* というか、RHEL 7系用のMySQL Toolsリポジトリー(Workbenchとか入ってるとこ)の中にはmysql-routerがある。6系用のリポジトリーにはない。
$ curl -s http://repo.mysql.com/yum/mysql-tools-community/el/7/x86_64 | grep router mysql-router-2.0.2-1.el7.x86_6..> 23-Oct-2015 06:36 1.0M mysql-router-debuginfo-2.0.2-1..> 23-Oct-2015 06:36 2.4M $ curl -s http://repo.mysql.com/yum/mysql-tools-community/el/6/x86_64 | grep router
ビルドしたやつはちゃんと動くけど、.tar.gzを解凍したやつはもちろん動かない。
$ wget http://dev.mysql.com/get/Downloads/MySQL-Router/mysql-router-2.0.2-linux-glibc2.17-x86-64bit.tar.gz $ tar xf mysql-router-2.0.2-linux-glibc2.17-x86-64bit.tar.gz $ cd mysql-router-2.0.2-linux-glibc2.17-x86-64bit $ bin/mysqlrouter bin/mysqlrouter: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /root/mysql-router-2.0.2-linux-glibc2.17-x86-64bit/bin/../lib/libmysqlrouter.so.1) bin/mysqlrouter: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /root/mysql-router-2.0.2-linux-glibc2.17-x86-64bit/bin/../lib/libmysqlrouter.so.1) bin/mysqlrouter: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /root/mysql-router-2.0.2-linux-glibc2.17-x86-64bit/bin/../lib/libmysqlrouter.so.1) bin/mysqlrouter: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /root/mysql-router-2.0.2-linux-glibc2.17-x86-64bit/bin/../lib/libmysqlharness.so.0) bin/mysqlrouter: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /root/mysql-router-2.0.2-linux-glibc2.17-x86-64bit/bin/../lib/libmysqlharness.so.0)
うう、CentOS 7なマシンが欲しいよう。
0 件のコメント :
コメントを投稿