rymysqlさん
ry10m****@gmail*****
2012年 1月 16日 (月) 14:57:02 JST
初めまして、三間といいます。 mroongaコンパイルを、ディレクトリをカスタマイズして導入すると、 INSTALL PLUGINで以下のように失敗します。 mroonga+mysqldを都合上rpmで入れたくありません。 回避方法をどなたかご存知でしょうか? ご教授ください。 root @ localhost:(none)>INSTALL PLUGIN groonga SONAME 'ha_groonga.so'; ERROR 1126 (HY000): Can't open shared library '/data-io/src/mysql-5.5.20-linux2.6-x86_64/lib/plugin/ha_groonga.so' (errno: 0 /usr/local/groonga129/lib/libgroonga.so.0: undefined symbol: _ZTVN10__cxxabiv120__si_class_type_infoE) 前提 groonga(1.2.9)コンパイル mysql(5.5.20)バイナリ+mysql(5.5.20)ソース mroonga(1.11)コンパイル mecabなし ●mysql5.5.20 バイナリ配置 /data-io/src/mysql-5.5.20-linux2.6-x86_64 データ配置 /data-io/mysqls/sandboxes/msb_5_5_20/ ソース /data-io/src/mysql-5.5.20 # cd /data-io/src/mysql-5.5.20-linux2.6-x86_64 # ./bin/mysql_config Usage: ./bin/mysql_config [OPTIONS] Options: --cflags [-I/data-io/src/mysql-5.5.20-linux2.6-x86_64/include -fPIC -g -static-libgcc -fno-omit-frame-pointer -fno-strict-aliasing -DMY_PTHREAD_FASTMUTEX=1] --include [-I/data-io/src/mysql-5.5.20-linux2.6-x86_64/include] --libs [-L/data-io/src/mysql-5.5.20-linux2.6-x86_64/lib -lmysqlclient -lpthread -lm -lrt -ldl] --libs_r [-L/data-io/src/mysql-5.5.20-linux2.6-x86_64/lib -lmysqlclient_r -lpthread -lm -lrt -ldl] --plugindir [/data-io/src/mysql-5.5.20-linux2.6-x86_64/lib/plugin] --socket [/tmp/mysql.sock] --port [0] --version [5.5.20] --libmysqld-libs [-L/data-io/src/mysql-5.5.20-linux2.6-x86_64/lib -lmysqld -lpthread -lm -lrt -lcrypt -ldl -laio] --variable=VAR VAR is one of: pkgincludedir [/data-io/src/mysql-5.5.20-linux2.6-x86_64/include] pkglibdir [/data-io/src/mysql-5.5.20-linux2.6-x86_64/lib] plugindir [/data-io/src/mysql-5.5.20-linux2.6-x86_64/lib/plugin] ●groonga DL http://packages.groonga.org/source/groonga/groonga-1.2.9.tar.gz export CC=gcc export CFLAGS="-O3 -m64 -mtune=nocona" export CXX=gcc export CXXFLAGS="-O3 -m64 -mtune=nocona" ./configure \ --prefix=/usr/local/groonga129 make;make install 結果 ---------------------------------------------------------------------- Libraries have been installed in: /usr/local/groonga129/lib If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,-rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- ---------------------------------------------------------------------- Libraries have been installed in: /usr/local/groonga129/lib/groonga/plugins/suggest If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,-rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- # ldd /usr/local/groonga129/lib/libgroonga.so linux-vdso.so.1 => (0x00007ffff97fd000) libm.so.6 => /lib64/libm.so.6 (0x00002acf4ede7000) librt.so.1 => /lib64/librt.so.1 (0x00002acf4f06a000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00002acf4f274000) libnsl.so.1 => /lib64/libnsl.so.1 (0x00002acf4f48f000) libdl.so.2 => /lib64/libdl.so.2 (0x00002acf4f6a7000) libc.so.6 => /lib64/libc.so.6 (0x00002acf4f8ac000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00002acf4fc04000) /lib64/ld-linux-x86-64.so.2 (0x0000003250200000) ●mroonga DL https://github.com/downloads/mroonga/mroonga/mroonga-1.11.tar.gz export CC=gcc export CFLAGS="-O3 -m64 -mtune=nocona" export CXX=gcc export CXXFLAGS="-O3 -m64 -mtune=nocona" export GROONGA_CFLAGS="-I/usr/local/groonga129/include/groonga" export GROONGA_LIBS="-L/usr/local/groonga129/lib -lgroonga" ./configure \ --prefix=/data-io/src/mysql-5.5.20-linux2.6-x86_64 \ --with-mysql-source=/data-io/src/mysql-5.5.20 \ --with-mysql-config=/data-io/src/mysql-5.5.20-linux2.6-x86_64/bin/mysql_config make:make install 結果 ---------------------------------------------------------------------- Libraries have been installed in: /data-io/src/mysql-5.5.20-linux2.6-x86_64/lib/plugin If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,-rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- # ldd /data-io/src/mysql-5.5.20-linux2.6-x86_64/lib/plugin/ha_groonga.so linux-vdso.so.1 => (0x00007fff7addf000) libgroonga.so.0 => /usr/local/groonga129/lib/libgroonga.so.0 (0x00002b4e68b09000) libc.so.6 => /lib64/libc.so.6 (0x00002b4e68f33000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00002b4e6928b000) libm.so.6 => /lib64/libm.so.6 (0x00002b4e69499000) librt.so.1 => /lib64/librt.so.1 (0x00002b4e6971d000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b4e69926000) libnsl.so.1 => /lib64/libnsl.so.1 (0x00002b4e69b41000) libdl.so.2 => /lib64/libdl.so.2 (0x00002b4e69d5a000) /lib64/ld-linux-x86-64.so.2 (0x0000003250200000)