<div dir="ltr"><br><br><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">kumar s</b> <span dir="ltr"><<a href="mailto:skumar.m226@gmail.com">skumar.m226@gmail.com</a>></span><br>
Date: Mon, Nov 25, 2013 at 12:10 PM<br>Subject: Re: [lttng-dev] liburcu error: Cannot find -lurcu<br>To: "Thibault, Daniel" <<a href="mailto:Daniel.Thibault@drdc-rddc.gc.ca">Daniel.Thibault@drdc-rddc.gc.ca</a>><br>
<br><br><div dir="ltr"><div><br></div><div>Hi,<br><br>I tried test .so and app ,compiled with mips gcc . it worked fine without throwing any errors.<br><br><br></div><div>configuring with static library works fine but shared lib throws this error. I have attached the log below. <br>

<br><b>Static Library build</b><br><br>CC=mips64-octeon-linux-gnu-gcc ./configure prefix=$(pwd)/urcu_install --host=mips64-octeon-linux-gnu --disable-shared<br>configure: WARNING: if you wanted to set the --build type, don't use --host.<br>

    If a cross compiler is detected then cross compile mode will be used<br>checking build system type... i686-pc-linux-gnu<br>checking host system type... mips64-octeon-linux-gnu<br>checking target system type... mips64-octeon-linux-gnu<br>

checking for a BSD-compatible install... /usr/bin/install -c<br>checking whether build environment is sane... yes<br>checking for mips64-octeon-linux-gnu-strip... mips64-octeon-linux-gnu-strip<br>checking for a thread-safe mkdir -p... /bin/mkdir -p<br>

checking for gawk... gawk<br>checking whether make sets $(MAKE)... yes<br>checking for style of include used by make... GNU<br>checking for mips64-octeon-linux-gnu-gcc... mips64-octeon-linux-gnu-gcc<br>checking whether the C compiler works... yes<br>

checking for C compiler default output file name... a.out<br>checking for suffix of executables... <br>checking whether we are cross compiling... yes<br>checking for suffix of object files... o<br>checking whether we are using the GNU C compiler... yes<br>

checking whether mips64-octeon-linux-gnu-gcc accepts -g... yes<br>checking for mips64-octeon-linux-gnu-gcc option to accept ISO C89... none needed<br>checking dependency style of mips64-octeon-linux-gnu-gcc... gcc3<br>checking for thread local storage (TLS) class... __thread<br>

checking for mips64-octeon-linux-gnu-gcc... (cached) mips64-octeon-linux-gnu-gcc<br>checking whether we are using the GNU C compiler... (cached) yes<br>checking whether mips64-octeon-linux-gnu-gcc accepts -g... (cached) yes<br>

checking for mips64-octeon-linux-gnu-gcc option to accept ISO C89... (cached) none needed<br>checking dependency style of mips64-octeon-linux-gnu-gcc... (cached) gcc3<br>checking whether make sets $(MAKE)... (cached) yes<br>

checking how to print strings... printf<br>checking for a sed that does not truncate output... /bin/sed<br>checking for grep that handles long lines and -e... /bin/grep<br>checking for egrep... /bin/grep -E<br>checking for fgrep... /bin/grep -F<br>

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

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

checking whether ln -s works... yes<br>checking the maximum length of command line arguments... 1572864<br>checking whether the shell understands some XSI constructs... yes<br>checking whether the shell understands "+="... yes<br>

checking how to convert i686-pc-linux-gnu file names to mips64-octeon-linux-gnu format... func_convert_file_noop<br>checking how to convert i686-pc-linux-gnu file names to toolchain format... func_convert_file_noop<br>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<br>

checking for mips64-octeon-linux-gnu-objdump... mips64-octeon-linux-gnu-objdump<br>checking how to recognize dependent libraries... pass_all<br>checking for mips64-octeon-linux-gnu-dlltool... no<br>checking for dlltool... no<br>

checking how to associate runtime and link libraries... printf %s\n<br>checking for mips64-octeon-linux-gnu-ar... mips64-octeon-linux-gnu-ar<br>checking for archiver @FILE support... @<br>checking for mips64-octeon-linux-gnu-strip... (cached) mips64-octeon-linux-gnu-strip<br>

checking for mips64-octeon-linux-gnu-ranlib... mips64-octeon-linux-gnu-ranlib<br>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<br>

checking for sysroot... no<br>checking for mips64-octeon-linux-gnu-mt... no<br>checking for mt... no<br>checking if : is a manifest tool... no<br>checking how to run the C preprocessor... mips64-octeon-linux-gnu-gcc -E<br>

checking for ANSI C header files... yes<br>checking for sys/types.h... yes<br>checking for sys/stat.h... yes<br>checking for stdlib.h... yes<br>checking for string.h... yes<br>checking for memory.h... yes<br>checking for strings.h... yes<br>

checking for inttypes.h... yes<br>checking for stdint.h... yes<br>checking for unistd.h... yes<br>checking for dlfcn.h... yes<br>checking for objdir... .libs<br>checking if mips64-octeon-linux-gnu-gcc supports -fno-rtti -fno-exceptions... no<br>

checking for mips64-octeon-linux-gnu-gcc option to produce PIC... -fPIC -DPIC<br>checking if mips64-octeon-linux-gnu-gcc PIC flag -fPIC -DPIC works... yes<br>checking if mips64-octeon-linux-gnu-gcc static flag -static works... yes<br>

checking if mips64-octeon-linux-gnu-gcc supports -c -o file.o... yes<br>checking if mips64-octeon-linux-gnu-gcc supports -c -o file.o... (cached) yes<br>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<br>

checking dynamic linker characteristics... GNU/Linux ld.so<br>checking how to hardcode library paths into programs... immediate<br>checking whether stripping libraries is possible... yes<br>checking if libtool supports shared libraries... yes<br>

<b>checking whether to build shared libraries... no</b><br>checking whether to build static libraries... yes<br>checking for inline... inline<br>checking for pid_t... yes<br>checking for size_t... yes<br>checking for stdlib.h... (cached) yes<br>

checking for GNU libc compatible malloc... (cached) yes<br>checking for stdlib.h... (cached) yes<br>checking for unistd.h... (cached) yes<br>checking for sys/param.h... yes<br>checking for getpagesize... yes<br>checking for working mmap... no<br>

checking for bzero... yes<br>checking for gettimeofday... yes<br>checking for munmap... yes<br>checking for sched_getcpu... yes<br>checking for strtoul... yes<br>checking for sysconf... yes<br>checking for sys_futex()... yes<br>

checking for cpu_set_t... yes<br>checking whether CPU_ZERO works... yes<br>checking whether CPU_SET works... yes<br>checking for sched_setaffinity... yes<br>checking how many arguments sched_setaffinity takes... 3<br>configure: creating ./config.status<br>

config.status: creating Makefile<br>config.status: creating doc/Makefile<br>config.status: creating doc/examples/Makefile<br>config.status: creating tests/Makefile<br>config.status: creating tests/common/Makefile<br>config.status: creating tests/unit/Makefile<br>

config.status: creating tests/benchmark/Makefile<br>config.status: creating tests/regression/Makefile<br>config.status: creating liburcu.pc<br>config.status: creating liburcu-bp.pc<br>config.status: creating liburcu-cds.pc<br>

config.status: creating liburcu-qsbr.pc<br>config.status: creating liburcu-mb.pc<br>config.status: creating liburcu-signal.pc<br>config.status: creating config.h<br>config.status: config.h is unchanged<br>config.status: creating urcu/config.h<br>

config.status: urcu/config.h is unchanged<br>config.status: linking urcu/arch/mips.h to urcu/arch.h<br>config.status: linking urcu/uatomic/mips.h to urcu/uatomic.h<br>config.status: executing depfiles commands<br>config.status: executing libtool commands<br>

SMP support enabled.<br>Thread Local Storage (TLS): __thread.<div class="im"><br><br>[shkumar@shrayanth userspace-rcu]$ make <br>make  all-recursive<br></div>make[1]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'<br>

Making all in .<br>make[2]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'<br>  CC     wfqueue.lo<br>  CC     wfcqueue.lo<div class="im"><br>  CC     wfstack.lo<br>  CCLD   <a href="http://liburcu-common.la" target="_blank">liburcu-common.la</a><br>

  CC     urcu.lo<br></div><div class="im">  CC     urcu-pointer.lo<br>  CCLD   <a href="http://liburcu.la" target="_blank">liburcu.la</a><br>  CC     urcu-qsbr.lo<br></div>  CCLD   <a href="http://liburcu-qsbr.la" target="_blank">liburcu-qsbr.la</a><br>
  CC     liburcu_mb_la-urcu.lo<div class="im"><br>
  CC     liburcu_mb_la-urcu-pointer.lo<br>  CCLD   <a href="http://liburcu-mb.la" target="_blank">liburcu-mb.la</a><br>  CC     liburcu_signal_la-urcu.lo<br></div><div class="im">  CC     liburcu_signal_la-urcu-pointer.lo<br>
  CCLD   <a href="http://liburcu-signal.la" target="_blank">liburcu-signal.la</a><br>
  CC     urcu-bp.lo<br></div><div class="im">  CCLD   <a href="http://liburcu-bp.la" target="_blank">liburcu-bp.la</a><br>  CC     rculfqueue.lo<br>  CC     rculfstack.lo<br>  CC     lfstack.lo<br>  CC     rculfhash.lo<br>
</div><div class="im">  CC     rculfhash-mm-order.lo<br>  CC     rculfhash-mm-chunk.lo<br>
  CC     rculfhash-mm-mmap.lo<br>  CCLD   <a href="http://liburcu-cds.la" target="_blank">liburcu-cds.la</a><br></div>make[2]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'<br>Making all in doc<br>
make[2]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'<br>
Making all in examples<br>make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'<br>make[3]: Nothing to be done for `all'.<br>make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'<br>

make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'<br>make[3]: Nothing to be done for `all-am'.<br>make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'<br>

make[2]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'<br>Making all in tests<br>make[2]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests'<br>

Making all in common<br>make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/common'<br>make[3]: Nothing to be done for `all'.<br>make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/common'<br>

Making all in unit<br>make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/unit'<br>  CC     test_uatomic.o<br>  CCLD   test_uatomic<br>  CC     test_urcu_multiflavor.o<br>

  CC     test_urcu_multiflavor-memb.o<br>  CC     test_urcu_multiflavor-mb.o<br>  CC     test_urcu_multiflavor-signal.o<br>  CC     test_urcu_multiflavor-qsbr.o<br>  CC     test_urcu_multiflavor-bp.o<br>  CCLD   test_urcu_multiflavor<br>

  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor.o<br>  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-memb.o<br>  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-mb.o<br>  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-signal.o<br>

  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-qsbr.o<br>  CC     test_urcu_multiflavor_dynlink-test_urcu_multiflavor-bp.o<br>  CCLD   test_urcu_multiflavor_dynlink<br>make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/unit'<br>

Making all in benchmark<br>make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/benchmark'<br>  CC     test_urcu.o<br>  CC     urcu.o<br>  CC     urcu-pointer.o<br>  CC     wfcqueue.o<br>

  CCLD   test_urcu<br>  CC     test_urcu_dynamic_link-test_urcu.o<br>  CC     test_urcu_dynamic_link-urcu.o<br>  CC     test_urcu_dynamic_link-urcu-pointer.o<br>  CC     test_urcu_dynamic_link-wfcqueue.o<br>  CCLD   test_urcu_dynamic_link<br>

  CC     test_urcu_timing.o<br>  CCLD   test_urcu_timing<br>  CC     test_urcu_signal-test_urcu.o<br>  CC     test_urcu_signal-urcu.o<br>  CC     test_urcu_signal-urcu-pointer.o<br>  CC     test_urcu_signal-wfcqueue.o<br>

  CCLD   test_urcu_signal<br>  CC     test_urcu_signal_dynamic_link-test_urcu.o<br>  CC     test_urcu_signal_dynamic_link-urcu.o<br>  CC     test_urcu_signal_dynamic_link-urcu-pointer.o<br>  CC     test_urcu_signal_dynamic_link-wfcqueue.o<br>

  CCLD   test_urcu_signal_dynamic_link<br>  CC     test_urcu_signal_timing-test_urcu_timing.o<br>  CC     test_urcu_signal_timing-urcu.o<br>  CC     test_urcu_signal_timing-urcu-pointer.o<br>  CC     test_urcu_signal_timing-wfcqueue.o<br>

  CCLD   test_urcu_signal_timing<br>  CC     test_rwlock_timing.o<br>  CCLD   test_rwlock_timing<br>  CC     test_rwlock.o<br>  CCLD   test_rwlock<br>  CC     test_perthreadlock_timing.o<br>  CCLD   test_perthreadlock_timing<br>

  CC     test_perthreadlock.o<br>  CCLD   test_perthreadlock<br>  CC     test_urcu_yield-test_urcu.o<br>  CC     test_urcu_yield-urcu.o<br>  CC     test_urcu_yield-urcu-pointer.o<br>  CC     test_urcu_yield-wfcqueue.o<br>

  CCLD   test_urcu_yield<br>  CC     test_urcu_signal_yield-test_urcu.o<br>  CC     test_urcu_signal_yield-urcu.o<br>  CC     test_urcu_signal_yield-urcu-pointer.o<br>  CC     test_urcu_signal_yield-wfcqueue.o<br>  CCLD   test_urcu_signal_yield<br>

  CC     test_urcu_mb-test_urcu.o<br>  CC     test_urcu_mb-urcu.o<br>  CC     test_urcu_mb-urcu-pointer.o<br>  CC     test_urcu_mb-wfcqueue.o<br>  CCLD   test_urcu_mb<br>  CC     test_urcu_qsbr_timing.o<br>  CC     urcu-qsbr.o<br>

  CCLD   test_urcu_qsbr_timing<br>  CC     test_urcu_qsbr.o<br>  CCLD   test_urcu_qsbr<br>  CC     test_mutex.o<br>  CCLD   test_mutex<br>  CC     test_looplen.o<br>  CCLD   test_looplen<br>  CC     test_urcu_gc.o<br>  CCLD   test_urcu_gc<br>

  CC     test_urcu_signal_gc-test_urcu_gc.o<br>  CC     test_urcu_signal_gc-urcu.o<br>  CC     test_urcu_signal_gc-urcu-pointer.o<br>  CC     test_urcu_signal_gc-wfcqueue.o<br>  CCLD   test_urcu_signal_gc<br>  CC     test_urcu_lgc-test_urcu_gc.o<br>

  CC     test_urcu_lgc-urcu.o<br>  CC     test_urcu_lgc-urcu-pointer.o<br>  CC     test_urcu_lgc-wfcqueue.o<br>  CCLD   test_urcu_lgc<br>  CC     test_urcu_mb_gc-test_urcu_gc.o<br>  CC     test_urcu_mb_gc-urcu.o<br>  CC     test_urcu_mb_gc-urcu-pointer.o<br>

  CC     test_urcu_mb_gc-wfcqueue.o<br>  CCLD   test_urcu_mb_gc<br>  CC     test_urcu_qsbr_gc.o<br>  CCLD   test_urcu_qsbr_gc<br>  CC     test_urcu_qsbr_lgc-test_urcu_qsbr_gc.o<br>  CC     test_urcu_qsbr_lgc-urcu-qsbr.o<br>

  CC     test_urcu_qsbr_lgc-urcu-pointer.o<br>  CC     test_urcu_qsbr_lgc-wfcqueue.o<br>  CCLD   test_urcu_qsbr_lgc<br>  CC     test_urcu_signal_lgc-test_urcu_gc.o<br>  CC     test_urcu_signal_lgc-urcu.o<br>  CC     test_urcu_signal_lgc-urcu-pointer.o<br>

  CC     test_urcu_signal_lgc-wfcqueue.o<br>  CCLD   test_urcu_signal_lgc<br>  CC     test_urcu_mb_lgc-test_urcu_gc.o<br>  CC     test_urcu_mb_lgc-urcu.o<br>  CC     test_urcu_mb_lgc-urcu-pointer.o<br>  CC     test_urcu_mb_lgc-wfcqueue.o<br>

  CCLD   test_urcu_mb_lgc<br>  CC     test_urcu_qsbr_dynamic_link-test_urcu_qsbr.o<br>  CC     test_urcu_qsbr_dynamic_link-urcu-qsbr.o<br>  CC     test_urcu_qsbr_dynamic_link-urcu-pointer.o<br>  CC     test_urcu_qsbr_dynamic_link-wfcqueue.o<br>

  CCLD   test_urcu_qsbr_dynamic_link<br>  CC     test_urcu_defer.o<br>  CCLD   test_urcu_defer<br>  CC     test_urcu_assign.o<br>  CCLD   test_urcu_assign<br>  CC     test_urcu_assign_dynamic_link-test_urcu_assign.o<br>  CC     test_urcu_assign_dynamic_link-urcu.o<br>

  CC     test_urcu_assign_dynamic_link-urcu-pointer.o<br>  CC     test_urcu_assign_dynamic_link-wfcqueue.o<br>  CCLD   test_urcu_assign_dynamic_link<br>  CC     test_urcu_bp.o<br>  CC     urcu-bp.o<br>  CCLD   test_urcu_bp<br>

  CC     test_urcu_bp_dynamic_link-test_urcu_bp.o<br>  CC     test_urcu_bp_dynamic_link-urcu-bp.o<br>  CC     test_urcu_bp_dynamic_link-urcu-pointer.o<br>  CC     test_urcu_bp_dynamic_link-wfcqueue.o<br>  CCLD   test_urcu_bp_dynamic_link<br>

  CC     test_cycles_per_loop.o<br>  CCLD   test_cycles_per_loop<br>  CC     test_urcu_lfq.o<br>  CCLD   test_urcu_lfq<br>  CC     test_urcu_wfq.o<br>  CCLD   test_urcu_wfq<br>  CC     test_urcu_lfs.o<br>  CCLD   test_urcu_lfs<br>

  CC     test_urcu_wfs.o<br>  CCLD   test_urcu_wfs<br>  CC     test_urcu_lfs_rcu.o<br>  CCLD   test_urcu_lfs_rcu<br>  CC     test_urcu_wfcq.o<br>  CCLD   test_urcu_wfcq<br>  CC     test_urcu_wfq_dynlink-test_urcu_wfq.o<br>

  CCLD   test_urcu_wfq_dynlink<br>  CC     test_urcu_wfs_dynlink-test_urcu_wfs.o<br>  CCLD   test_urcu_wfs_dynlink<br>  CC     test_urcu_wfcq_dynlink-test_urcu_wfcq.o<br>  CCLD   test_urcu_wfcq_dynlink<br>  CC     test_urcu_lfq_dynlink-test_urcu_lfq.o<br>

  CC     test_urcu_lfq_dynlink-urcu.o<br>  CC     test_urcu_lfq_dynlink-urcu-pointer.o<br>  CC     test_urcu_lfq_dynlink-wfcqueue.o<br>  CCLD   test_urcu_lfq_dynlink<br>  CC     test_urcu_lfs_dynlink-test_urcu_lfs.o<br>  CC     test_urcu_lfs_dynlink-urcu.o<br>

  CC     test_urcu_lfs_dynlink-urcu-pointer.o<br>  CC     test_urcu_lfs_dynlink-wfcqueue.o<br>  CCLD   test_urcu_lfs_dynlink<br>  CC     test_urcu_hash-test_urcu_hash.o<br>  CC     test_urcu_hash-test_urcu_hash_rw.o<br>  CC     test_urcu_hash-test_urcu_hash_unique.o<br>

  CCLD   test_urcu_hash<br>  CC     test_urcu_lfs_rcu_dynlink-test_urcu_lfs_rcu.o<br>  CC     test_urcu_lfs_rcu_dynlink-urcu.o<br>  CC     test_urcu_lfs_rcu_dynlink-urcu-pointer.o<br>  CC     test_urcu_lfs_rcu_dynlink-wfcqueue.o<br>

  CCLD   test_urcu_lfs_rcu_dynlink<br>make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/benchmark'<br>Making all in regression<br>make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/regression'<br>

  CC     test_urcu_fork.o<br>  CC     urcu.o<br>  CC     urcu-pointer.o<br>  CC     wfcqueue.o<br>  CCLD   test_urcu_fork<br>  CC     rcutorture_urcu-urcutorture.o<br>  CCLD   rcutorture_urcu<br>  CC     rcutorture_urcu_signal-urcutorture.o<br>

  CCLD   rcutorture_urcu_signal<br>  CC     rcutorture_urcu_mb-urcutorture.o<br>  CCLD   rcutorture_urcu_mb<br>  CC     rcutorture_urcu_bp-urcutorture.o<br>  CCLD   rcutorture_urcu_bp<br>  CC     rcutorture_urcu_qsbr-urcutorture.o<br>

  CCLD   rcutorture_urcu_qsbr<br>make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests/regression'<br>make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests'<br>

make[3]: Nothing to be done for `all-am'.<br>make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests'<br>make[2]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/tests'<br>

make[1]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'<br><br><br><br><font><b>Shared-library build.</b></font><br><br>CC=mips64-octeon-linux-gnu-gcc ./configure prefix=$(pwd)/urcu_install --host=mips64-octeon-linux-gnu --enable-shared<br>

configure: WARNING: if you wanted to set the --build type, don't use --host.<br>    If a cross compiler is detected then cross compile mode will be used<br>checking build system type... i686-pc-linux-gnu<br>checking host system type... mips64-octeon-linux-gnu<br>

checking target system type... mips64-octeon-linux-gnu<br>checking for a BSD-compatible install... /usr/bin/install -c<br>checking whether build environment is sane... yes<br>checking for mips64-octeon-linux-gnu-strip... mips64-octeon-linux-gnu-strip<br>

checking for a thread-safe mkdir -p... /bin/mkdir -p<br>checking for gawk... gawk<br>checking whether make sets $(MAKE)... yes<br>checking for style of include used by make... GNU<br>checking for mips64-octeon-linux-gnu-gcc... mips64-octeon-linux-gnu-gcc<br>

checking whether the C compiler works... yes<br>checking for C compiler default output file name... a.out<br>checking for suffix of executables... <br>checking whether we are cross compiling... yes<br>checking for suffix of object files... o<br>

checking whether we are using the GNU C compiler... yes<br>checking whether mips64-octeon-linux-gnu-gcc accepts -g... yes<br>checking for mips64-octeon-linux-gnu-gcc option to accept ISO C89... none needed<br>checking dependency style of mips64-octeon-linux-gnu-gcc... gcc3<br>

checking for thread local storage (TLS) class... __thread<br>checking for mips64-octeon-linux-gnu-gcc... (cached) mips64-octeon-linux-gnu-gcc<br>checking whether we are using the GNU C compiler... (cached) yes<br>checking whether mips64-octeon-linux-gnu-gcc accepts -g... (cached) yes<br>

checking for mips64-octeon-linux-gnu-gcc option to accept ISO C89... (cached) none needed<br>checking dependency style of mips64-octeon-linux-gnu-gcc... (cached) gcc3<br>checking whether make sets $(MAKE)... (cached) yes<br>

checking how to print strings... printf<br>checking for a sed that does not truncate output... /bin/sed<br>checking for grep that handles long lines and -e... /bin/grep<br>checking for egrep... /bin/grep -E<br>checking for fgrep... /bin/grep -F<br>

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

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

checking whether ln -s works... yes<br>checking the maximum length of command line arguments... 1572864<br>checking whether the shell understands some XSI constructs... yes<br>checking whether the shell understands "+="... yes<br>

checking how to convert i686-pc-linux-gnu file names to mips64-octeon-linux-gnu format... func_convert_file_noop<br>checking how to convert i686-pc-linux-gnu file names to toolchain format... func_convert_file_noop<br>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<br>

checking for mips64-octeon-linux-gnu-objdump... mips64-octeon-linux-gnu-objdump<br>checking how to recognize dependent libraries... pass_all<br>checking for mips64-octeon-linux-gnu-dlltool... no<br>checking for dlltool... no<br>

checking how to associate runtime and link libraries... printf %s\n<br>checking for mips64-octeon-linux-gnu-ar... mips64-octeon-linux-gnu-ar<br>checking for archiver @FILE support... @<br>checking for mips64-octeon-linux-gnu-strip... (cached) mips64-octeon-linux-gnu-strip<br>

checking for mips64-octeon-linux-gnu-ranlib... mips64-octeon-linux-gnu-ranlib<br>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<br>

checking for sysroot... no<br>checking for mips64-octeon-linux-gnu-mt... no<br>checking for mt... no<br>checking if : is a manifest tool... no<br>checking how to run the C preprocessor... mips64-octeon-linux-gnu-gcc -E<br>

checking for ANSI C header files... yes<br>checking for sys/types.h... yes<br>checking for sys/stat.h... yes<br>checking for stdlib.h... yes<br>checking for string.h... yes<br>checking for memory.h... yes<br>checking for strings.h... yes<br>

checking for inttypes.h... yes<br>checking for stdint.h... yes<br>checking for unistd.h... yes<br>checking for dlfcn.h... yes<br>checking for objdir... .libs<br>checking if mips64-octeon-linux-gnu-gcc supports -fno-rtti -fno-exceptions... no<br>

checking for mips64-octeon-linux-gnu-gcc option to produce PIC... -fPIC -DPIC<br>checking if mips64-octeon-linux-gnu-gcc PIC flag -fPIC -DPIC works... yes<br>checking if mips64-octeon-linux-gnu-gcc static flag -static works... yes<br>

checking if mips64-octeon-linux-gnu-gcc supports -c -o file.o... yes<br>checking if mips64-octeon-linux-gnu-gcc supports -c -o file.o... (cached) yes<br>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<br>

checking whether -lc should be explicitly linked in... no<br>checking dynamic linker characteristics... GNU/Linux ld.so<br>checking how to hardcode library paths into programs... immediate<br>checking whether stripping libraries is possible... yes<br>

checking if libtool supports shared libraries... yes<br><b>checking whether to build shared libraries... yes</b><br>checking whether to build static libraries... yes<br>checking for inline... inline<br>checking for pid_t... yes<br>

checking for size_t... yes<br>checking for stdlib.h... (cached) yes<br>checking for GNU libc compatible malloc... (cached) yes<br>checking for stdlib.h... (cached) yes<br>checking for unistd.h... (cached) yes<br>checking for sys/param.h... yes<br>

checking for getpagesize... yes<br>checking for working mmap... no<br>checking for bzero... yes<br>checking for gettimeofday... yes<br>checking for munmap... yes<br>checking for sched_getcpu... yes<br>checking for strtoul... yes<br>

checking for sysconf... yes<br>checking for sys_futex()... yes<br>checking for cpu_set_t... yes<br>checking whether CPU_ZERO works... yes<br>checking whether CPU_SET works... yes<br>checking for sched_setaffinity... yes<br>

checking how many arguments sched_setaffinity takes... 3<br>configure: creating ./config.status<br>config.status: creating Makefile<br>config.status: creating doc/Makefile<br>config.status: creating doc/examples/Makefile<br>

config.status: creating tests/Makefile<br>config.status: creating tests/common/Makefile<br>config.status: creating tests/unit/Makefile<br>config.status: creating tests/benchmark/Makefile<br>config.status: creating tests/regression/Makefile<br>

config.status: creating liburcu.pc<br>config.status: creating liburcu-bp.pc<br>config.status: creating liburcu-cds.pc<br>config.status: creating liburcu-qsbr.pc<br>config.status: creating liburcu-mb.pc<br>config.status: creating liburcu-signal.pc<br>

config.status: creating config.h<br>config.status: config.h is unchanged<br>config.status: creating urcu/config.h<br>config.status: urcu/config.h is unchanged<br>config.status: linking urcu/arch/mips.h to urcu/arch.h<br>
config.status: linking urcu/uatomic/mips.h to urcu/uatomic.h<br>
config.status: executing depfiles commands<br>config.status: executing libtool commands<br>SMP support enabled.<br>Thread Local Storage (TLS): __thread.<div class="im"><br><br><br>[shkumar@shrayanth userspace-rcu]$ make<br>
make  all-recursive<br></div>
make[1]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'<br>Making all in .<br>make[2]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'<br>  CC     wfqueue.lo<br>

  CC     wfcqueue.lo<div class="im"><br>  CC     wfstack.lo<br>  CCLD   <a href="http://liburcu-common.la" target="_blank">liburcu-common.la</a><br>  CC     urcu.lo<br></div><div class="im">  CC     urcu-pointer.lo<br>  CCLD   <a href="http://liburcu.la" target="_blank">liburcu.la</a><br>
  CC     urcu-qsbr.lo<br></div>
  CCLD   <a href="http://liburcu-qsbr.la" target="_blank">liburcu-qsbr.la</a><br>  CC     liburcu_mb_la-urcu.lo<div class="im"><br>  CC     liburcu_mb_la-urcu-pointer.lo<br>  CCLD   <a href="http://liburcu-mb.la" target="_blank">liburcu-mb.la</a><br>
  CC     liburcu_signal_la-urcu.lo<br></div><div class="im">
  CC     liburcu_signal_la-urcu-pointer.lo<br>  CCLD   <a href="http://liburcu-signal.la" target="_blank">liburcu-signal.la</a><br>  CC     urcu-bp.lo<br></div><div class="im">  CCLD   <a href="http://liburcu-bp.la" target="_blank">liburcu-bp.la</a><br>
  CC     rculfqueue.lo<br>
  CC     rculfstack.lo<br>  CC     lfstack.lo<br>  CC     rculfhash.lo<br></div><div class="im">  CC     rculfhash-mm-order.lo<br>  CC     rculfhash-mm-chunk.lo<br>  CC     rculfhash-mm-mmap.lo<br>  CCLD   <a href="http://liburcu-cds.la" target="_blank">liburcu-cds.la</a><br>
</div>
make[2]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'<br>Making all in doc<br>make[2]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'<br>

Making all in examples<br>make[3]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'<br>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<br>

make[4]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'<br>make -C hlist<br>make[5]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/hlist'<br>

make -f Makefile.cds_hlist_add_head_rcu<br>make[6]: Entering directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/hlist'<div class="im"><br>cc  -g -O2 -Wall -I../../../urcu/ -I../../../ -g -O2 \<br>
        -c -o cds_hlist_add_head_rcu.o cds_hlist_add_head_rcu.c<br></div>
cc -g -O2 -Wall  -g -O2 -L../../../.libs/ -Wl,-rpath="/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/../../.libs/" \<div class="im"><br>        -o cds_hlist_add_head_rcu cds_hlist_add_head_rcu.o -lurcu<br>

/usr/bin/ld: skipping incompatible ../../../.libs//liburcu.so when searching for -lurcu<br></div><div class="im">/usr/bin/ld: skipping incompatible ../../../.libs//liburcu.a when searching for -lurcu<br>/usr/bin/ld: cannot find -lurcu<br>
collect2: ld returned 1 exit status<br>
make[6]: *** [cds_hlist_add_head_rcu] Error 1<br></div>make[6]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/hlist'<div class="im"><br>make[5]: *** [all] Error 2<br></div>
make[5]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples/hlist'<div class="im"><br>
make[4]: *** [all] Error 2<br></div>make[4]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'<div class="im"><br>make[3]: *** [all-local] Error 2<br></div>make[3]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc/examples'<div class="im">
<br>
make[2]: *** [all-recursive] Error 1<br></div>make[2]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu/doc'<div class="im"><br>make[1]: *** [all-recursive] Error 1<br></div>make[1]: Leaving directory `/home/shkumar/Development_Merge/NewOCT/userspace/userspace-rcu'<div class="im">
<br>
make: *** [all] Error 2<br><br></div></div><div><br><br></div><div>is userspace lib required to build lttng-tools (latest version from git). It throws this error while trying to configure..<br><br>[...]<br>checking for grp.h... yes<br>

checking for pthread_create in -lpthread... yes<br>checking for poptGetContext in -lpopt... yes<br>checking for uuid_generate in -luuid... yes<br>checking whether cds_list_add is declared... no<br>configure: error: liburcu >= 0.7.2 or newer is needed<br>

<br></div><div>thank you<br></div><div>skumar<br></div><div><br></div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Nov 22, 2013 at 9:16 PM, Thibault, Daniel <span dir="ltr"><<a href="mailto:Daniel.Thibault@drdc-rddc.gc.ca" target="_blank">Daniel.Thibault@drdc-rddc.gc.ca</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>> I edited the log to show only the error. The detailed log is  :<br>
<br>
</div>   Copy-writer's tip: when omitting irrelevant parts from a log (or conversation quote), indicate the omission with an ellipsis (e.g. '(...)' or '[...]').<br>
<br>
> $ make<br>
> make  all-recursive<br>
> [...]<br>
<div>>  CC     wfstack.lo<br>
>  CCLD   <a href="http://liburcu-common.la" target="_blank">liburcu-common.la</a><br>
>  CC     urcu.lo<br>
<br>
</div>   That's the line that creates liburcu.so.  It seems to succeed, albeit with a number of warnings.<br>
<div><br>
> In file included from urcu.c:530:<br>
> urcu-call-rcu-impl.h: In function 'alloc_cpu_call_rcu_data':<br>
> urcu-call-rcu-impl.h:150: warning: implicit declaration of function 'rpl_malloc'<br>
> urcu-call-rcu-impl.h:150: warning: assignment makes pointer from integer without a cast<br>
</div>> [...]<br>
>  CC     urcu-pointer.lo<br>
> [...]<br>
<div>> make -f Makefile.cds_hlist_add_head_rcu<br>
> make[6]: Entering directory<br>
> `/home/kumar/userspace/userspace-rcu/doc/examples/hlist'<br>
> cc  -g -O2 -Wall -I../../../urcu/ -I../../../ -g -O2 \<br>
>        -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/" \<br>
>        -o cds_hlist_add_head_rcu cds_hlist_add_head_rcu.o -lurcu<br>
> /usr/bin/ld: skipping incompatible ../../../.libs//liburcu.so when searching for -lurcu<br>
<br>
</div>   But when we get here and try to use liburcu.so for the first time, it turns out to be "incompatible".<br>
<div><br>
> /usr/bin/ld: skipping incompatible ../../../.libs//liburcu.a when searching for -lurcu<br>
> /usr/bin/ld: cannot find -lurcu<br>
> collect2: ld returned 1 exit status<br>
> make[6]: *** [cds_hlist_add_head_rcu] Error 1<br>
</div>> [...]<br>
<br>
   Except for the warnings, your make log matches mine up to the fatal liburcu.so incompatibility error.<br>
<br>
   Could the compiler be misconfigured?  Try making a small test .so and application pair.<br>
<div><div><br>
Daniel U. Thibault<br>
Protection des systèmes et contremesures (PSC) | Systems Protection & Countermeasures (SPC)<br>
Cyber sécurité pour les missions essentielles (CME) | Mission Critical Cyber Security (MCCS)<br>
R & D pour la défense Canada - Valcartier (RDDC Valcartier) | Defence R&D Canada - Valcartier (DRDC Valcartier)<br>
2459 route de la Bravoure<br>
Québec QC  G3J 1X5<br>
CANADA<br>
Vox : (418) 844-4000 x4245<br>
Fax : (418) 844-4538<br>
NAC : 918V QSDJ <<a href="http://www.travelgis.com/map.asp?addr=918V%20QSDJ" target="_blank">http://www.travelgis.com/map.asp?addr=918V%20QSDJ</a>><br>
Gouvernement du Canada | Government of Canada<br>
<<a href="http://www.valcartier.drdc-rddc.gc.ca/" target="_blank">http://www.valcartier.drdc-rddc.gc.ca/</a>><br>
</div></div></blockquote></div><br></div>
</div></div></div><br></div>