maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #06575
Re: Build fail of MariaDB10 with TokuDB enabled
Can you run objdump -x /path/to/logformat | grep RPATH?
For example, I get this:
% ldd logformat
linux-vdso.so.1 (0x00007fffe03cd000)
libtokuportability.so =>
/home/leif/git/ft-index/opt/portability/libtokuportability.so
(0x00007fba00ec1000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007fba00ca3000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007fba00a9f000)
librt.so.1 => /usr/lib/librt.so.1 (0x00007fba00897000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fba00593000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007fba00290000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007fba0007a000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007fb9ffccf000)
/lib64/ld-linux-x86-64.so.2 (0x00007fba010cd000)
% objdump -x logformat | grep RPATH
RPATH /home/leif/git/ft-index/opt/portability
Maybe RPATH is set differently on suse and our cmake isn't doing it right.
On Mon, Dec 2, 2013 at 4:47 PM, <darx@xxxxxxxx> wrote:
> Hi
>
> On Mon, Dec 2, 2013, at 01:00 PM, Sergei Golubchik wrote:
> > I do't know what it is (and couldn't find it on that page), but I
> > suppose it's innodb only, so shouldn't matter here.
>
> Just following instructions. It's @
>
> "
> Install MariaDB by running the following commands:
>
> sed -i "s@data/test@\${INSTALL_MYSQLTESTDIR}@g"
> sql/CMakeLists.txt &&
> ==> sed -i "s/srv_buf_size/srv_sort_buf_size/"
> storage/innobase/row/row0log.cc &&
> "
>
> > > yes, I'm aware that opensuse is not a currently "supported platform"
> for
> > > TokuDB.
> >
> > If you mean this page:
> > https://mariadb.com/kb/en/how-to-enable-tokudb-in-mariadb/
> > It only lists platforms where we build tokudb binaries. While we have an
> > opensuse builder, it's openSUSE 11.1, with gcc 4.3.2 and cmake 2.6, so
> > it cannot build TokuDB. That's why openSUSE is not in the list.
>
> thanks
>
> > I don't know of any reason why TokuDB cannot be built on openSUSE,
> > presuming all build requirements are met. And in your case they
> > obviously are.
>
> ok
>
> > > If it's not, I'd like to keep trying to get it working, here.
> >
> > Ah, wait a sec. SuSE. Cannot find .so library. This does ring a bell -
> > may be it's not exactly your problem, but take a look at this:
> >
> > https://github.com/Tokutek/ft-index/issues/73
> >
> > We have it fixed. But perhaps what you see is somehow related?
>
> /lib "vs" /lib64 still crops up every once in a rare while
>
> I'm not doing a "./configure ...", obviously, but my @MariaDB 'cmake'
> already _does_ include
>
> cmake .. \
> ...
> -DINSTALL_LIBDIR=/lib64 \
> ...
>
> perhaps it's not getting properly captured/passed?
>
> > Try to run 'make VERBOSE=1' instead of 'make', there can be a clue
> > there. Or email the output and let me look at it.
>
> make VERBOSE=1
> ...
> ====> http://pastebin.com/Gqj5FP8N
>
>
> > The problem is that we're trying to run logformat and it can't find
> > libtokuportability.so, even though a few lines up, it says we just build
> > libtokuportability.so. Maybe the loader path is different on suse, can
> you
> > try looking in the build directory for libtokuportability.so (it's
> supposed
> > to land in portability/), and can you try running ldd on ft/logformat in
> > the build directory?
>
> find . | grep libtokuportability
> ./storage/tokudb/ft-index/portability/libtokuportability_static.a
>
> ./storage/tokudb/ft-index/portability/libtokuportability_static_conv.a
> ./storage/tokudb/ft-index/portability/libtokuportability.so
>
> find . | grep ft/logformat
> ./storage/tokudb/ft-index/ft/logformat
> ldd ./storage/tokudb/ft-index/ft/logformat
> linux-vdso.so.1 (0x00007fffb2bdf000)
> libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f506fb65000)
> libtokuportability.so => not found
> libdl.so.2 => /lib64/libdl.so.2 (0x00007f506f961000)
> librt.so.1 => /lib64/librt.so.1 (0x00007f506f759000)
> libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f506f451000)
> libm.so.6 => /lib64/libm.so.6 (0x00007f506f153000)
> libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f506ef3c000)
> libc.so.6 => /lib64/libc.so.6 (0x00007f506eb8e000)
> /lib64/ld-linux-x86-64.so.2 (0x00007f506fd81000)
>
> darx
>
--
Cheers,
Leif
Follow ups
References