← Back to team overview

maria-developers team mailing list archive

Re: Build fail of MariaDB10 with TokuDB enabled

 


On Mon, Dec 2, 2013, at 06:06 PM, Leif Walsh wrote:
> Wait, "skip build RPATH off" is a double-negative that I missed earlier.
> I think if you fool around with cmake's RPATH-related settings you'll be
> able to find the right combination, I'm not at a computer right now. At
> the very least, you should be able to leave them all as their defaults
> and the build should succeed. 

good news,

	rm -rf bld
	mkdir bld
	cd bld
	cmake .. \
-        -DCMAKE_SKIP_BUILD_RPATH=0 \
-        -DCMAKE_BUILD_WITH_INSTALL_RPATH=1 \
-        -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=1 \
	 ...
	 -DWITH_SSL=/usr/local/ssl \
	  -DOPENSSL_ROOT_DIR=/usr/local/ssl \
	  -DOPENSSL_INCLUDE_DIR=/usr/local/ssl/include \
	  -DOPENSSL_LIBRARIES=/usr/local/ssl/lib64/libssl.so \
	  -DCRYPTO_LIBRARY=/usr/local/ssl/lib64/libcrypto.so \
	 ...
	 -DWITHOUT_TOKUDB=0

	make VERBOSE=1

	objdump -x ./storage/tokudb/ft-index/ft/logformat | grep RPATH
		(still empty)

	ldd ./storage/tokudb/ft-index/ft/logformat
	        linux-vdso.so.1 (0x00007fffe4fff000)
	        libpthread.so.0 => /lib64/libpthread.so.0
	        (0x00007fd70dfc0000)
!!              libtokuportability.so =>
/usr/local/src/mariadb/bld/storage/tokudb/ft-index/portability/libtokuportability.so
(0x00007fd70dd65000)
	        libdl.so.2 => /lib64/libdl.so.2 (0x00007fd70db61000)
	        librt.so.1 => /lib64/librt.so.1 (0x00007fd70d959000)
	        libstdc++.so.6 => /usr/lib64/libstdc++.so.6
	        (0x00007fd70d651000)
	        libm.so.6 => /lib64/libm.so.6 (0x00007fd70d353000)
	        libgcc_s.so.1 => /lib64/libgcc_s.so.1
	        (0x00007fd70d13c000)
	        libc.so.6 => /lib64/libc.so.6 (0x00007fd70cd8e000)
	        /lib64/ld-linux-x86-64.so.2 (0x00007fd70e1dc000)

AND,

	make install

	sql/mysqld --version
		sql/mysqld  Ver 10.0.7-MariaDB-log for Linux on x86_64
		(Source distribution)

	ldd `which mysql` `which mysqld` | egrep "ssl|crypto"
		libssl.so.1.0.0 => /lib64/libssl.so.1.0.0
		(0x00007f1187191000)
		libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0
		(0x00007f1186dbe000)
		libssl.so.1.0.0 => /lib64/libssl.so.1.0.0
		(0x00007f6543007000)
		libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0
		(0x00007f6542c34000)

it appears something's changed since 'prior' versions, so that now
run-time ssl links are maintained without having to mess with the CMAKE
rpath settings.

i'll recheck this, determine whether rm'ing the RPATH cmake opts I'd
used has broken anything new, and figure out how to verify tokudb is
correctly built/installed


References