[lttng-dev] Fwd: liburcu error: Cannot find -lurcu

kumar s skumar.m226 at gmail.com
Mon Nov 25 01:41:09 EST 2013


---------- Forwarded message ----------
From: kumar s <skumar.m226 at gmail.com>
Date: Mon, Nov 25, 2013 at 12:10 PM
Subject: Re: [lttng-dev] liburcu error: Cannot find -lurcu
To: "Thibault, Daniel" <Daniel.Thibault at drdc-rddc.gc.ca>



Hi,

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.
    If a cross compiler is detected then cross compile mode will be used
checking build system type... i686-pc-linux-gnu
checking host system type... mips64-octeon-linux-gnu
checking target system type... mips64-octeon-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for mips64-octeon-linux-gnu-strip... mips64-octeon-linux-gnu-strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for mips64-octeon-linux-gnu-gcc... mips64-octeon-linux-gnu-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether mips64-octeon-linux-gnu-gcc accepts -g... yes
checking for mips64-octeon-linux-gnu-gcc option to accept ISO C89... none
needed
checking dependency style of mips64-octeon-linux-gnu-gcc... gcc3
checking for thread local storage (TLS) class... __thread
checking for mips64-octeon-linux-gnu-gcc... (cached)
mips64-octeon-linux-gnu-gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether mips64-octeon-linux-gnu-gcc accepts -g... (cached) yes
checking for mips64-octeon-linux-gnu-gcc option to accept ISO C89...
(cached) none needed
checking dependency style of mips64-octeon-linux-gnu-gcc... (cached) gcc3
checking whether make sets $(MAKE)... (cached) yes
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by mips64-octeon-linux-gnu-gcc...
/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools-gcc-4.3/mips64-octeon-linux-gnu/bin/ld
checking if the linker
(/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools-gcc-4.3/mips64-octeon-linux-gnu/bin/ld)
is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)...
/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools/bin/mips64-octeon-linux-gnu-nm
-B
checking the name lister
(/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools/bin/mips64-octeon-linux-gnu-nm
-B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert i686-pc-linux-gnu file names to
mips64-octeon-linux-gnu format... func_convert_file_noop
checking how to convert i686-pc-linux-gnu file names to toolchain format...
func_convert_file_noop
checking for
/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools-gcc-4.3/mips64-octeon-linux-gnu/bin/ld
option to reload object files... -r
checking for mips64-octeon-linux-gnu-objdump...
mips64-octeon-linux-gnu-objdump
checking how to recognize dependent libraries... pass_all
checking for mips64-octeon-linux-gnu-dlltool... no
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for mips64-octeon-linux-gnu-ar... mips64-octeon-linux-gnu-ar
checking for archiver @FILE support... @
checking for mips64-octeon-linux-gnu-strip... (cached)
mips64-octeon-linux-gnu-strip
checking for mips64-octeon-linux-gnu-ranlib...
mips64-octeon-linux-gnu-ranlib
checking command to parse
/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools/bin/mips64-octeon-linux-gnu-nm
-B output from mips64-octeon-linux-gnu-gcc object... ok
checking for sysroot... no
checking for mips64-octeon-linux-gnu-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking how to run the C preprocessor... mips64-octeon-linux-gnu-gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if mips64-octeon-linux-gnu-gcc supports -fno-rtti
-fno-exceptions... no
checking for mips64-octeon-linux-gnu-gcc option to produce PIC... -fPIC
-DPIC
checking if mips64-octeon-linux-gnu-gcc PIC flag -fPIC -DPIC works... yes
checking if mips64-octeon-linux-gnu-gcc static flag -static works... yes
checking if mips64-octeon-linux-gnu-gcc supports -c -o file.o... yes
checking if mips64-octeon-linux-gnu-gcc supports -c -o file.o... (cached)
yes
checking whether the mips64-octeon-linux-gnu-gcc linker
(/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools-gcc-4.3/mips64-octeon-linux-gnu/bin/ld)
supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
*checking whether to build shared libraries... no*
checking whether to build static libraries... yes
checking for inline... inline
checking for pid_t... yes
checking for size_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... (cached) yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/param.h... yes
checking for getpagesize... yes
checking for working mmap... no
checking for bzero... yes
checking for gettimeofday... yes
checking for munmap... yes
checking for sched_getcpu... yes
checking for strtoul... yes
checking for sysconf... yes
checking for sys_futex()... yes
checking for cpu_set_t... yes
checking whether CPU_ZERO works... yes
checking whether CPU_SET works... yes
checking for sched_setaffinity... yes
checking how many arguments sched_setaffinity takes... 3
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
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     wfstack.lo
  CCLD   liburcu-common.la
  CC     urcu.lo
  CC     urcu-pointer.lo
  CCLD   liburcu.la
  CC     urcu-qsbr.lo
  CCLD   liburcu-qsbr.la
  CC     liburcu_mb_la-urcu.lo

  CC     liburcu_mb_la-urcu-pointer.lo
  CCLD   liburcu-mb.la
  CC     liburcu_signal_la-urcu.lo
  CC     liburcu_signal_la-urcu-pointer.lo
  CCLD   liburcu-signal.la
  CC     urcu-bp.lo
  CCLD   liburcu-bp.la
  CC     rculfqueue.lo
  CC     rculfstack.lo
  CC     lfstack.lo
  CC     rculfhash.lo
  CC     rculfhash-mm-order.lo
  CC     rculfhash-mm-chunk.lo
  CC     rculfhash-mm-mmap.lo
  CCLD   liburcu-cds.la
make[2]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'
Making all in doc
make[2]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'
Making all in examples
make[3]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'
make[3]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'
make[2]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'
Making all in tests
make[2]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests'
Making all in common
make[3]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/common'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/common'
Making all in unit
make[3]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/unit'
  CC     test_uatomic.o
  CCLD   test_uatomic
  CC     test_urcu_multiflavor.o
  CC     test_urcu_multiflavor-memb.o
  CC     test_urcu_multiflavor-mb.o
  CC     test_urcu_multiflavor-signal.o
  CC     test_urcu_multiflavor-qsbr.o
  CC     test_urcu_multiflavor-bp.o
  CCLD   test_urcu_multiflavor
  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor.o
  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-memb.o
  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-mb.o
  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-signal.o
  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-qsbr.o
  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-bp.o
  CCLD   test_urcu_multiflavor_dynlink
make[3]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/unit'
Making all in benchmark
make[3]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/benchmark'
  CC     test_urcu.o
  CC     urcu.o
  CC     urcu-pointer.o
  CC     wfcqueue.o
  CCLD   test_urcu
  CC     test_urcu_dynamic_link-test_urcu.o
  CC     test_urcu_dynamic_link-urcu.o
  CC     test_urcu_dynamic_link-urcu-pointer.o
  CC     test_urcu_dynamic_link-wfcqueue.o
  CCLD   test_urcu_dynamic_link
  CC     test_urcu_timing.o
  CCLD   test_urcu_timing
  CC     test_urcu_signal-test_urcu.o
  CC     test_urcu_signal-urcu.o
  CC     test_urcu_signal-urcu-pointer.o
  CC     test_urcu_signal-wfcqueue.o
  CCLD   test_urcu_signal
  CC     test_urcu_signal_dynamic_link-test_urcu.o
  CC     test_urcu_signal_dynamic_link-urcu.o
  CC     test_urcu_signal_dynamic_link-urcu-pointer.o
  CC     test_urcu_signal_dynamic_link-wfcqueue.o
  CCLD   test_urcu_signal_dynamic_link
  CC     test_urcu_signal_timing-test_urcu_timing.o
  CC     test_urcu_signal_timing-urcu.o
  CC     test_urcu_signal_timing-urcu-pointer.o
  CC     test_urcu_signal_timing-wfcqueue.o
  CCLD   test_urcu_signal_timing
  CC     test_rwlock_timing.o
  CCLD   test_rwlock_timing
  CC     test_rwlock.o
  CCLD   test_rwlock
  CC     test_perthreadlock_timing.o
  CCLD   test_perthreadlock_timing
  CC     test_perthreadlock.o
  CCLD   test_perthreadlock
  CC     test_urcu_yield-test_urcu.o
  CC     test_urcu_yield-urcu.o
  CC     test_urcu_yield-urcu-pointer.o
  CC     test_urcu_yield-wfcqueue.o
  CCLD   test_urcu_yield
  CC     test_urcu_signal_yield-test_urcu.o
  CC     test_urcu_signal_yield-urcu.o
  CC     test_urcu_signal_yield-urcu-pointer.o
  CC     test_urcu_signal_yield-wfcqueue.o
  CCLD   test_urcu_signal_yield
  CC     test_urcu_mb-test_urcu.o
  CC     test_urcu_mb-urcu.o
  CC     test_urcu_mb-urcu-pointer.o
  CC     test_urcu_mb-wfcqueue.o
  CCLD   test_urcu_mb
  CC     test_urcu_qsbr_timing.o
  CC     urcu-qsbr.o
  CCLD   test_urcu_qsbr_timing
  CC     test_urcu_qsbr.o
  CCLD   test_urcu_qsbr
  CC     test_mutex.o
  CCLD   test_mutex
  CC     test_looplen.o
  CCLD   test_looplen
  CC     test_urcu_gc.o
  CCLD   test_urcu_gc
  CC     test_urcu_signal_gc-test_urcu_gc.o
  CC     test_urcu_signal_gc-urcu.o
  CC     test_urcu_signal_gc-urcu-pointer.o
  CC     test_urcu_signal_gc-wfcqueue.o
  CCLD   test_urcu_signal_gc
  CC     test_urcu_lgc-test_urcu_gc.o
  CC     test_urcu_lgc-urcu.o
  CC     test_urcu_lgc-urcu-pointer.o
  CC     test_urcu_lgc-wfcqueue.o
  CCLD   test_urcu_lgc
  CC     test_urcu_mb_gc-test_urcu_gc.o
  CC     test_urcu_mb_gc-urcu.o
  CC     test_urcu_mb_gc-urcu-pointer.o
  CC     test_urcu_mb_gc-wfcqueue.o
  CCLD   test_urcu_mb_gc
  CC     test_urcu_qsbr_gc.o
  CCLD   test_urcu_qsbr_gc
  CC     test_urcu_qsbr_lgc-test_urcu_qsbr_gc.o
  CC     test_urcu_qsbr_lgc-urcu-qsbr.o
  CC     test_urcu_qsbr_lgc-urcu-pointer.o
  CC     test_urcu_qsbr_lgc-wfcqueue.o
  CCLD   test_urcu_qsbr_lgc
  CC     test_urcu_signal_lgc-test_urcu_gc.o
  CC     test_urcu_signal_lgc-urcu.o
  CC     test_urcu_signal_lgc-urcu-pointer.o
  CC     test_urcu_signal_lgc-wfcqueue.o
  CCLD   test_urcu_signal_lgc
  CC     test_urcu_mb_lgc-test_urcu_gc.o
  CC     test_urcu_mb_lgc-urcu.o
  CC     test_urcu_mb_lgc-urcu-pointer.o
  CC     test_urcu_mb_lgc-wfcqueue.o
  CCLD   test_urcu_mb_lgc
  CC     test_urcu_qsbr_dynamic_link-test_urcu_qsbr.o
  CC     test_urcu_qsbr_dynamic_link-urcu-qsbr.o
  CC     test_urcu_qsbr_dynamic_link-urcu-pointer.o
  CC     test_urcu_qsbr_dynamic_link-wfcqueue.o
  CCLD   test_urcu_qsbr_dynamic_link
  CC     test_urcu_defer.o
  CCLD   test_urcu_defer
  CC     test_urcu_assign.o
  CCLD   test_urcu_assign
  CC     test_urcu_assign_dynamic_link-test_urcu_assign.o
  CC     test_urcu_assign_dynamic_link-urcu.o
  CC     test_urcu_assign_dynamic_link-urcu-pointer.o
  CC     test_urcu_assign_dynamic_link-wfcqueue.o
  CCLD   test_urcu_assign_dynamic_link
  CC     test_urcu_bp.o
  CC     urcu-bp.o
  CCLD   test_urcu_bp
  CC     test_urcu_bp_dynamic_link-test_urcu_bp.o
  CC     test_urcu_bp_dynamic_link-urcu-bp.o
  CC     test_urcu_bp_dynamic_link-urcu-pointer.o
  CC     test_urcu_bp_dynamic_link-wfcqueue.o
  CCLD   test_urcu_bp_dynamic_link
  CC     test_cycles_per_loop.o
  CCLD   test_cycles_per_loop
  CC     test_urcu_lfq.o
  CCLD   test_urcu_lfq
  CC     test_urcu_wfq.o
  CCLD   test_urcu_wfq
  CC     test_urcu_lfs.o
  CCLD   test_urcu_lfs
  CC     test_urcu_wfs.o
  CCLD   test_urcu_wfs
  CC     test_urcu_lfs_rcu.o
  CCLD   test_urcu_lfs_rcu
  CC     test_urcu_wfcq.o
  CCLD   test_urcu_wfcq
  CC     test_urcu_wfq_dynlink-test_urcu_wfq.o
  CCLD   test_urcu_wfq_dynlink
  CC     test_urcu_wfs_dynlink-test_urcu_wfs.o
  CCLD   test_urcu_wfs_dynlink
  CC     test_urcu_wfcq_dynlink-test_urcu_wfcq.o
  CCLD   test_urcu_wfcq_dynlink
  CC     test_urcu_lfq_dynlink-test_urcu_lfq.o
  CC     test_urcu_lfq_dynlink-urcu.o
  CC     test_urcu_lfq_dynlink-urcu-pointer.o
  CC     test_urcu_lfq_dynlink-wfcqueue.o
  CCLD   test_urcu_lfq_dynlink
  CC     test_urcu_lfs_dynlink-test_urcu_lfs.o
  CC     test_urcu_lfs_dynlink-urcu.o
  CC     test_urcu_lfs_dynlink-urcu-pointer.o
  CC     test_urcu_lfs_dynlink-wfcqueue.o
  CCLD   test_urcu_lfs_dynlink
  CC     test_urcu_hash-test_urcu_hash.o
  CC     test_urcu_hash-test_urcu_hash_rw.o
  CC     test_urcu_hash-test_urcu_hash_unique.o
  CCLD   test_urcu_hash
  CC     test_urcu_lfs_rcu_dynlink-test_urcu_lfs_rcu.o
  CC     test_urcu_lfs_rcu_dynlink-urcu.o
  CC     test_urcu_lfs_rcu_dynlink-urcu-pointer.o
  CC     test_urcu_lfs_rcu_dynlink-wfcqueue.o
  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
  CC     urcu-pointer.o
  CC     wfcqueue.o
  CCLD   test_urcu_fork
  CC     rcutorture_urcu-urcutorture.o
  CCLD   rcutorture_urcu
  CC     rcutorture_urcu_signal-urcutorture.o
  CCLD   rcutorture_urcu_signal
  CC     rcutorture_urcu_mb-urcutorture.o
  CCLD   rcutorture_urcu_mb
  CC     rcutorture_urcu_bp-urcutorture.o
  CCLD   rcutorture_urcu_bp
  CC     rcutorture_urcu_qsbr-urcutorture.o
  CCLD   rcutorture_urcu_qsbr
make[3]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/regression'
make[3]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests'
make[2]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests'
make[1]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'



*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.
    If a cross compiler is detected then cross compile mode will be used
checking build system type... i686-pc-linux-gnu
checking host system type... mips64-octeon-linux-gnu
checking target system type... mips64-octeon-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for mips64-octeon-linux-gnu-strip... mips64-octeon-linux-gnu-strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for mips64-octeon-linux-gnu-gcc... mips64-octeon-linux-gnu-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether mips64-octeon-linux-gnu-gcc accepts -g... yes
checking for mips64-octeon-linux-gnu-gcc option to accept ISO C89... none
needed
checking dependency style of mips64-octeon-linux-gnu-gcc... gcc3
checking for thread local storage (TLS) class... __thread
checking for mips64-octeon-linux-gnu-gcc... (cached)
mips64-octeon-linux-gnu-gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether mips64-octeon-linux-gnu-gcc accepts -g... (cached) yes
checking for mips64-octeon-linux-gnu-gcc option to accept ISO C89...
(cached) none needed
checking dependency style of mips64-octeon-linux-gnu-gcc... (cached) gcc3
checking whether make sets $(MAKE)... (cached) yes
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by mips64-octeon-linux-gnu-gcc...
/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools-gcc-4.3/mips64-octeon-linux-gnu/bin/ld
checking if the linker
(/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools-gcc-4.3/mips64-octeon-linux-gnu/bin/ld)
is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)...
/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools/bin/mips64-octeon-linux-gnu-nm
-B
checking the name lister
(/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools/bin/mips64-octeon-linux-gnu-nm
-B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert i686-pc-linux-gnu file names to
mips64-octeon-linux-gnu format... func_convert_file_noop
checking how to convert i686-pc-linux-gnu file names to toolchain format...
func_convert_file_noop
checking for
/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools-gcc-4.3/mips64-octeon-linux-gnu/bin/ld
option to reload object files... -r
checking for mips64-octeon-linux-gnu-objdump...
mips64-octeon-linux-gnu-objdump
checking how to recognize dependent libraries... pass_all
checking for mips64-octeon-linux-gnu-dlltool... no
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for mips64-octeon-linux-gnu-ar... mips64-octeon-linux-gnu-ar
checking for archiver @FILE support... @
checking for mips64-octeon-linux-gnu-strip... (cached)
mips64-octeon-linux-gnu-strip
checking for mips64-octeon-linux-gnu-ranlib...
mips64-octeon-linux-gnu-ranlib
checking command to parse
/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools/bin/mips64-octeon-linux-gnu-nm
-B output from mips64-octeon-linux-gnu-gcc object... ok
checking for sysroot... no
checking for mips64-octeon-linux-gnu-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking how to run the C preprocessor... mips64-octeon-linux-gnu-gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if mips64-octeon-linux-gnu-gcc supports -fno-rtti
-fno-exceptions... no
checking for mips64-octeon-linux-gnu-gcc option to produce PIC... -fPIC
-DPIC
checking if mips64-octeon-linux-gnu-gcc PIC flag -fPIC -DPIC works... yes
checking if mips64-octeon-linux-gnu-gcc static flag -static works... yes
checking if mips64-octeon-linux-gnu-gcc supports -c -o file.o... yes
checking if mips64-octeon-linux-gnu-gcc supports -c -o file.o... (cached)
yes
checking whether the mips64-octeon-linux-gnu-gcc linker
(/home/shkumar/Development_Merge/NewOCT/OCTEON_SDK/octeon_sdk/OCTEON-SDK/tools-gcc-4.3/mips64-octeon-linux-gnu/bin/ld)
supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
*checking whether to build shared libraries... yes*
checking whether to build static libraries... yes
checking for inline... inline
checking for pid_t... yes
checking for size_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... (cached) yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/param.h... yes
checking for getpagesize... yes
checking for working mmap... no
checking for bzero... yes
checking for gettimeofday... yes
checking for munmap... yes
checking for sched_getcpu... yes
checking for strtoul... yes
checking for sysconf... yes
checking for sys_futex()... yes
checking for cpu_set_t... yes
checking whether CPU_ZERO works... yes
checking whether CPU_SET works... yes
checking for sched_setaffinity... yes
checking how many arguments sched_setaffinity takes... 3
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
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     wfstack.lo
  CCLD   liburcu-common.la
  CC     urcu.lo
  CC     urcu-pointer.lo
  CCLD   liburcu.la
  CC     urcu-qsbr.lo
  CCLD   liburcu-qsbr.la
  CC     liburcu_mb_la-urcu.lo

  CC     liburcu_mb_la-urcu-pointer.lo
  CCLD   liburcu-mb.la
  CC     liburcu_signal_la-urcu.lo
  CC     liburcu_signal_la-urcu-pointer.lo
  CCLD   liburcu-signal.la
  CC     urcu-bp.lo
  CCLD   liburcu-bp.la
  CC     rculfqueue.lo
  CC     rculfstack.lo
  CC     lfstack.lo
  CC     rculfhash.lo
  CC     rculfhash-mm-order.lo
  CC     rculfhash-mm-chunk.lo
  CC     rculfhash-mm-mmap.lo
  CCLD   liburcu-cds.la
make[2]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'
Making all in doc
make[2]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'
Making all in examples
make[3]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'
make -f dist-files/Makefile AM_CPPFLAGS=" -I../../../urcu/ -I../../../"
AM_CFLAGS='-g -O2' AM_LDFLAGS=' -L../../../.libs/
-Wl,-rpath="/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/../../.libs/"'
all
make[4]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'
make -C hlist
make[5]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/hlist'
make -f Makefile.cds_hlist_add_head_rcu
make[6]: Entering directory
`/home/shkumar/Development_Merge/NewOCT/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/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
make[6]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/hlist'

make[5]: *** [all] Error 2
make[5]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/hlist'

make[4]: *** [all] Error 2
make[4]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'

make[3]: *** [all-local] Error 2
make[3]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'

make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'

make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'

make: *** [all] Error 2



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

thank you
skumar



On Fri, Nov 22, 2013 at 9:16 PM, Thibault, Daniel <
Daniel.Thibault at drdc-rddc.gc.ca> wrote:

> > 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/>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lttng.org/pipermail/lttng-dev/attachments/20131125/294b0f75/attachment-0001.html>


More information about the lttng-dev mailing list