[lttng-dev] 32bit consumerd and UST with 64 bit lttng tools

Vijay Anand vjanandr85 at gmail.com
Tue Apr 5 07:29:34 UTC 2016


Hi,

I am trying to instrument a 32 bit application with lttng. I am running
this on a 64 bit Ubuntu14.04 x86_64 VM. I am following the steps as
provided @
https://lttng.org/docs/#doc-instrumenting-32-bit-app-on-64-bit-system

The application is a simple application with tracef tracing. The
application can be found at
https://gist.github.com/vjanandr/ea1a60350c0a96ef44bc8417a903de49

I first installed the dependent 32 bit packages, namely: urcu
sudo apt-get install libxml2-dev
sudo apt-get install libpopt-dev:i386

I was able to install the 32 bit UST libraries.

I then tried building 32 bit consumerd and was able to build it
successfully.

lttng64_32 at lttng6432-vm:/usr/lib32$ ls liblttng-ust-ctl.so
liblttng-ust-ctl.so

again installed 64 bit popt dependent libraries.

sudo apt-get install libpopt-dev
make clean

and
./configure --prefix=/usr --with-consumerd32-libdir=/usr/lib32
--with-consumerd32-bin=/usr/lib32/lttng/libexec/lttng-consumerd
--with-lttng-ust-prefix=/usr/lib32 LDFLAGS="-L/usr/lib32
-L/usr/lib/i386-linux-gnu"

gave me an error.

checking for ustctl_recv_channel_from_consumer in -llttng-ust-ctl... no
configure: error: Cannot find LTTng-UST >= 2.2.x. Use
--with-lttng-ust-prefix=PREFIX to specify its location, or specify
--disable-lttng-ust to build lttng-tools without LTTng-UST support.

Further more when I looked at the config.log file I see below...


configure:6320: result: no
configure:6367: checking for ustctl_recv_channel_from_consumer in
-llttng-ust-ctl
configure:6393: gcc -o conftest -g -O2  -I/usr/lib32/include -L/usr/lib32
-L/usr/lib/i386-linux-gnu -L/usr/lib32/lib64 -L/usr/lib32/lib conftest.c
-llttng-ust-ctl -lurcu-common -lurcu-bp -lurcu-cds -lrt -ldl
     -lpopt -lpthread  >&5
/usr/bin/ld: skipping incompatible /usr/lib32/liblttng-ust-ctl.so when
searching for -llttng-ust-ctl
/usr/bin/ld: skipping incompatible /usr/lib32/liblttng-ust-ctl.a when
searching for -llttng-ust-ctl
/usr/bin/ld: cannot find -llttng-ust-ctl
/usr/bin/ld: skipping incompatible //usr/local/lib/liburcu-common.so when
searching for -lurcu-common
/usr/bin/ld: skipping incompatible //usr/local/lib/liburcu-common.a when
searching for -lurcu-common
/usr/bin/ld: cannot find -lurcu-common
/usr/bin/ld: skipping incompatible //usr/local/lib/liburcu-bp.so when
searching for -lurcu-bp
/usr/bin/ld: skipping incompatible //usr/local/lib/liburcu-bp.a when
searching for -lurcu-bp
/usr/bin/ld: cannot find -lurcu-bp
/usr/bin/ld: skipping incompatible //usr/local/lib/liburcu-cds.so when
searching for -lurcu-cds
/usr/bin/ld: skipping incompatible //usr/local/lib/liburcu-cds.a when
searching for -lurcu-cds
/usr/bin/ld: cannot find -lurcu-cds

The complete config.log file is available @
https://gist.github.com/vjanandr/a38bef9d5b8ff7089e12da844ffbd4bc.

could anyone please let me know if I have to build a 64 bit UST library as
well  and then link the 32 bit UST library with the application using
LD_PRELOAD ? or build the rest of the tools binaries ignoring UST support.

Regards,
Vijay
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.lttng.org/pipermail/lttng-dev/attachments/20160405/a9724ec1/attachment-0001.html>


More information about the lttng-dev mailing list