From: Daniel.Thibault@drdc-rddc.gc.ca (Thibault, Daniel)
Subject: [lttng-dev] Fwd: liburcu error: Cannot find -lurcu
Date: Mon, 25 Nov 2013 16:40:48 +0000 [thread overview]
Message-ID: <48CF5AC71E61DB46B70D0F388054EFFD267A5DE7@VAL-E-01.valcartier.drdc-rddc.gc.ca> (raw)
> Date: Mon, 25 Nov 2013 12:11:09 +0530
> From: kumar s <skumar.m226@gmail.com>
>
> I tried test .so and app ,compiled with mips gcc . it worked fine without throwing any errors.
>
> configuring with static library works fine but shared lib throws this error. I have attached the log below.
>
> *Static Library build*
>
> CC=mips64-octeon-linux-gnu-gcc ./configure prefix=$(pwd)/urcu_install --host=mips64-octeon-linux-gnu --disable-shared
> configure: WARNING: if you wanted to set the --build type, don't use --host.
> [...]
> checking if libtool supports shared libraries... yes
> *checking whether to build shared libraries... no*
> checking whether to build static libraries... yes
> [...]
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating doc/Makefile
> config.status: creating doc/examples/Makefile
> config.status: creating tests/Makefile
> config.status: creating tests/common/Makefile
> config.status: creating tests/unit/Makefile
> config.status: creating tests/benchmark/Makefile
> config.status: creating tests/regression/Makefile
> config.status: creating liburcu.pc
> config.status: creating liburcu-bp.pc
> config.status: creating liburcu-cds.pc
> config.status: creating liburcu-qsbr.pc
> config.status: creating liburcu-mb.pc
> config.status: creating liburcu-signal.pc
> config.status: creating config.h
> config.status: config.h is unchanged
> config.status: creating urcu/config.h
> config.status: urcu/config.h is unchanged
The two "config.h is unchanged" messages are the only ones different from my configure.log. Did you install from a clean system?
> config.status: linking urcu/arch/mips.h to urcu/arch.h
> config.status: linking urcu/uatomic/mips.h to urcu/uatomic.h
> config.status: executing depfiles commands
> config.status: executing libtool commands
> SMP support enabled.
> Thread Local Storage (TLS): __thread.
> [shkumar at shrayanth userspace-rcu]$ make
> make all-recursive
> make[1]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'
> Making all in .
> make[2]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'
> CC wfqueue.lo
> CC wfcqueue.lo
> [...]
> CC urcu.lo
At least the warnings have disappeared.
> [...]
> CCLD test_urcu_lfs_rcu_dynlink
> make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/benchmark'
> Making all in regression
> make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/regression'
> CC test_urcu_fork.o
> CC urcu.o
> [...]
> make[1]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'
Your log is identical to mine, except for the paths, of course.
> *Shared-library build.*
>
> CC=mips64-octeon-linux-gnu-gcc ./configure prefix=$(pwd)/urcu_install --host=mips64-octeon-linux-gnu --enable-shared
> configure: WARNING: if you wanted to set the --build type, don't use --host.
> [...]
> checking if libtool supports shared libraries... yes
> *checking whether to build shared libraries... yes*
> checking whether to build static libraries... yes
> [...]
> configure: creating ./config.status
> [...]
> config.status: creating config.h
> config.status: config.h is unchanged
> config.status: creating urcu/config.h
> config.status: urcu/config.h is unchanged
> config.status: linking urcu/arch/mips.h to urcu/arch.h
> config.status: linking urcu/uatomic/mips.h to urcu/uatomic.h
> config.status: executing depfiles commands
> config.status: executing libtool commands
> SMP support enabled.
> Thread Local Storage (TLS): __thread.
> [shkumar at shrayanth userspace-rcu]$ make
> make all-recursive
> make[1]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'
> Making all in .
> [...]
> cc -g -O2 -Wall -I../../../urcu/ -I../../../ -g -O2 \
> -c -o cds_hlist_add_head_rcu.o cds_hlist_add_head_rcu.c
> cc -g -O2 -Wall -g -O2 -L../../../.libs/ \
> -Wl,-rpath="/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/../../.libs/" \
> -o cds_hlist_add_head_rcu cds_hlist_add_head_rcu.o -lurcu
> /usr/bin/ld: skipping incompatible ../../../.libs//liburcu.so when searching for -lurcu
> /usr/bin/ld: skipping incompatible ../../../.libs//liburcu.a when searching for -lurcu
> /usr/bin/ld: cannot find -lurcu
> collect2: ld returned 1 exit status
> make[6]: *** [cds_hlist_add_head_rcu] Error 1
> [...]
The incompatibility message occurs because you're trying to mix bitnesses (a 32-bit liburcu.so won't link with a 64-bit application and vice-versa).
Could the replacement of gcc by cc somehow be responsible? How come the Makefile isn't using CC = mips64-octeon-linux-gnu-gcc (or so it seems)?
> is userspace lib required to build lttng-tools (latest version from git)?
> It throws this error while trying to configure..
>
> [...]
> checking for grp.h... yes
> checking for pthread_create in -lpthread... yes
> checking for poptGetContext in -lpopt... yes
> checking for uuid_generate in -luuid... yes
> checking whether cds_list_add is declared... no
> configure: error: liburcu >= 0.7.2 or newer is needed
> skumar
Yes, lttng-tools requires userspace-rcu, although it can be built without lttng-modules and/or lttng-ust.
Daniel U. Thibault
Protection des syst?mes et contremesures (PSC) | Systems Protection & Countermeasures (SPC)
Cyber s?curit? pour les missions essentielles (CME) | Mission Critical Cyber Security (MCCS)
R & D pour la d?fense Canada - Valcartier (RDDC Valcartier) | Defence R&D Canada - Valcartier (DRDC Valcartier)
2459 route de la Bravoure
Qu?bec QC G3J 1X5
CANADA
Vox : (418) 844-4000 x4245
Fax : (418) 844-4538
NAC : 918V QSDJ <http://www.travelgis.com/map.asp?addr=918V%20QSDJ>
Gouvernement du Canada | Government of Canada
<http://www.valcartier.drdc-rddc.gc.ca/>
next reply other threads:[~2013-11-25 16:40 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-25 16:40 Thibault, Daniel [this message]
2013-11-27 9:55 ` kumar s
-- strict thread matches above, loose matches on Subject: below --
2013-11-29 14:17 Thibault, Daniel
2014-02-03 15:52 ` Mathieu Desnoyers
2013-11-22 15:46 [lttng-dev] " Thibault, Daniel
[not found] ` <CAO_Arvo3AHW3bqWtMJXb_YExCyvyCjqSaA-CfBJL=upPV+7jyw@mail.gmail.com>
2013-11-25 6:41 ` [lttng-dev] Fwd: " kumar s
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48CF5AC71E61DB46B70D0F388054EFFD267A5DE7@VAL-E-01.valcartier.drdc-rddc.gc.ca \
--to=daniel.thibault@drdc-rddc.gc.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox