Mirror of the lttng-dev mailing list
 help / color / mirror / Atom feed
* [lttng-dev] liburcu error: Cannot find -lurcu
@ 2013-11-22 15:46 Thibault, Daniel
       [not found] ` <CAO_Arvo3AHW3bqWtMJXb_YExCyvyCjqSaA-CfBJL=upPV+7jyw@mail.gmail.com>
  0 siblings, 1 reply; 6+ messages in thread
From: Thibault, Daniel @ 2013-11-22 15:46 UTC (permalink / raw)


> I edited the log to show only the error. The detailed log is  :

   Copy-writer's tip: when omitting irrelevant parts from a log (or conversation quote), indicate the omission with an ellipsis (e.g. '(...)' or '[...]').

> $ make
> make  all-recursive
> [...]
>  CC     wfstack.lo
>  CCLD   liburcu-common.la
>  CC     urcu.lo

   That's the line that creates liburcu.so.  It seems to succeed, albeit with a number of warnings.

> In file included from urcu.c:530:
> urcu-call-rcu-impl.h: In function 'alloc_cpu_call_rcu_data':
> urcu-call-rcu-impl.h:150: warning: implicit declaration of function 'rpl_malloc'
> urcu-call-rcu-impl.h:150: warning: assignment makes pointer from integer without a cast
> [...]
>  CC     urcu-pointer.lo
> [...]
> make -f Makefile.cds_hlist_add_head_rcu
> make[6]: Entering directory
> `/home/kumar/userspace/userspace-rcu/doc/examples/hlist'
> 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/kumar/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

   But when we get here and try to use liburcu.so for the first time, it turns out to be "incompatible".

> /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
> [...]

   Except for the warnings, your make log matches mine up to the fatal liburcu.so incompatibility error.

   Could the compiler be misconfigured?  Try making a small test .so and application pair.

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/>



^ permalink raw reply	[flat|nested] 6+ messages in thread
* [lttng-dev] Fwd: liburcu error: Cannot find -lurcu
@ 2013-11-25 16:40 Thibault, Daniel
  2013-11-27  9:55 ` kumar s
  0 siblings, 1 reply; 6+ messages in thread
From: Thibault, Daniel @ 2013-11-25 16:40 UTC (permalink / 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/>



^ permalink raw reply	[flat|nested] 6+ messages in thread
* [lttng-dev] Fwd: liburcu error: Cannot find -lurcu
@ 2013-11-29 14:17 Thibault, Daniel
  2014-02-03 15:52 ` Mathieu Desnoyers
  0 siblings, 1 reply; 6+ messages in thread
From: Thibault, Daniel @ 2013-11-29 14:17 UTC (permalink / raw)


> Date: Wed, 27 Nov 2013 15:25:14 +0530
> From: kumar s <skumar.m226@gmail.com>
>
> I was able to fix the error, i did a small change in
> doc/examples/Makefile.examples.template file.
>
>  ifdef CC
>  CC = mips64-octeon-linux-gnu-gcc
>  endif
>
> I changed ifndef to ifdef.

   Now, is this a peculiarity of MIPS, or do we need to patch the lttng-ust package?

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/>



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-02-03 15:52 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-11-22 15:46 [lttng-dev] liburcu error: Cannot find -lurcu Thibault, Daniel
     [not found] ` <CAO_Arvo3AHW3bqWtMJXb_YExCyvyCjqSaA-CfBJL=upPV+7jyw@mail.gmail.com>
2013-11-25  6:41   ` [lttng-dev] Fwd: " kumar s
2013-11-25 16:40 Thibault, Daniel
2013-11-27  9:55 ` kumar s
2013-11-29 14:17 Thibault, Daniel
2014-02-03 15:52 ` Mathieu Desnoyers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox