XtraDB Cluster 5.5.28だけを積んだマシンでtpcc-mysqlをコンパイルしようとしたら、
-lmysqlclient_rが見つからないと何度も怒られた。
$ bin/mysql_config
Usage: bin/mysql_config [OPTIONS]
Options:
--cflags [-I/xtra/include -fPIC -g -static-libgcc -fno-omit-frame-pointer -DPERCONA_INNODB_VERSION=rel29.1 -DWITH_WSREP -DWSREP_PROC_INFO -DMYSQL_MAX_VARIABLE_VALUE_LEN=2048 -DWITH_INNODB_DISALLOW_WRITES -fPIC -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1]
--include [-I/xtra/include]
--libs [-L/xtra/lib/mysql -lmysqlclient -lpthread -lm -lrt -ldl]
--libs_r [-L/xtra/lib/mysql -lmysqlclient_r -lpthread -lm -lrt -ldl]
--plugindir [/xtra/lib/mysql/plugin]
--socket [/tmp/mysql.sock]
--port [0]
--version [5.5.28]
--libmysqld-libs [-L/xtra/lib/mysql -lmysqld]
--variable=VAR VAR is one of:
pkgincludedir [/xtra/include]
pkglibdir [/xtra/lib/mysql]
plugindir [/xtra/lib/mysql/plugin]
$ ls -l lib lib/mysql
lib:
合計 50544
-rwxr-xr-x 1 xtra xtra 26612459 11月 17 05:38 2012 libgalera_smm.so
-rw-r--r-- 1 xtra xtra 17309456 11月 17 05:39 2012 libmysqlclient.a
lrwxrwxrwx 1 xtra xtra 20 1月 11 13:43 2013 libmysqlclient.so -> libmysqlclient.so.18
lrwxrwxrwx 1 xtra xtra 24 1月 11 13:43 2013 libmysqlclient.so.18 -> libmysqlclient.so.18.0.0
-rwxr-xr-x 1 xtra xtra 7811970 11月 17 05:39 2012 libmysqlclient.so.18.0.0
lrwxrwxrwx 1 xtra xtra 16 1月 11 13:43 2013 libmysqlclient_r.a -> libmysqlclient.a
lrwxrwxrwx 1 xtra xtra 17 1月 11 13:43 2013 libmysqlclient_r.so -> libmysqlclient.so
lrwxrwxrwx 1 xtra xtra 17 1月 11 13:43 2013 libmysqlclient_r.so.18 -> libmysqlclient.so
lrwxrwxrwx 1 xtra xtra 17 1月 11 13:43 2013 libmysqlclient_r.so.18.0.0 -> libmysqlclient.so
-rw-r--r-- 1 xtra xtra 10288 11月 17 05:38 2012 libmysqlservices.a
drwxr-xr-x 3 xtra xtra 4096 11月 17 05:41 2012 mysql
lib/mysql:
合計 4
drwxr-xr-x 3 xtra xtra 4096 11月 17 05:41 2012 plugin
なんかどうも、mysql_config --libsと--libs_rは/xtra/libを返さないといけない気がするんだけども。
lib/mysqlの中何も入ってナイヨ。。
(同じ5.5.28の本家MySQLとMariaDBのmysql_configは$basedir/libを返してくれる)
バグかなー。。
バグでした。
返信削除Confirmされてます。
tpcc-mysqlに限った話であれば、src/Makefileの`mysql_config ..`の部分を
返信削除(lib/mysqlをlibに直して)ベタ文字列に書き換えればコンパイルは通るのでした。
他もconfigureスクリプトなりMakefile書き直せば動くんだろうけど、コンパイルするものが特に無い。。