[ltt-dev] [RCU] Compile error in tests

Mathieu Desnoyers compudj at krystal.dyndns.org
Fri Jul 1 19:55:39 EDT 2011


* Henrik Hautakoski (hhi08001 at student.mdh.se) wrote:
> Hi, i get a strange error when compiling rcutorture_urcu from master
> (d4267b0b37f1a7d35e23f0d7c045a973f6c3a6aa).

It looks like a makefile dependency tracking issue. Did you try doing a
make clean, or try building from a clean tree ?

Thanks,

Mathieu

> 
> gcc version: 4.2.3 i686-pc-linux-gnu
> 
> /bin/sh ../libtool --tag=CC --mode=link gcc -I.. -I.. -g -g -O2
> -lpthread  -o test_qsbr  test_qsbr.o urcu-qsbr.o urcu-pointer.o
> wfqueue.o
> gcc -I.. -I.. -g -g -O2 -o test_qsbr test_qsbr.o urcu-qsbr.o
> urcu-pointer.o wfqueue.o  -lpthread
> if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../urcu    -DRCU_MEMBARRIER -I..
> -I.. -g -g -O2 -MT rcutorture_urcu-urcutorture.o -MD -MP -MF
> ".deps/rcutorture_urcu-urcutorture.Tpo" -c -o
> rcutorture_urcu-urcutorture.o `test -f 'urcutorture.c' || echo
> './'`urcutorture.c; \
> then mv -f ".deps/rcutorture_urcu-urcutorture.Tpo"
> ".deps/rcutorture_urcu-urcutorture.Po"; else rm -f
> ".deps/rcutorture_urcu-urcutorture.Tpo"; exit 1; fi
> /bin/sh ../libtool --tag=CC --mode=link gcc -I.. -I.. -g -g -O2
> -lpthread  -o rcutorture_urcu  rcutorture_urcu-urcutorture.o ../urcu.c
> ../urcu-pointer.c ../wfqueue.c  ../liburcu-cds.la
> gcc -I.. -I.. -g -g -O2 -o .libs/rcutorture_urcu
> rcutorture_urcu-urcutorture.o ../urcu.c ../urcu-pointer.c ../wfqueue.c
>  ../.libs/liburcu-cds.so -lpthread
> rcutorture_urcu-urcutorture.o: In function `stresstest':
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:447: undefined
> reference to `get_cpu_call_rcu_data_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:449: undefined
> reference to `free_all_cpu_call_rcu_data_memb'
> rcutorture_urcu-urcutorture.o: In function `perftestrun':
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:211: undefined
> reference to `get_cpu_call_rcu_data_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:213: undefined
> reference to `free_all_cpu_call_rcu_data_memb'
> rcutorture_urcu-urcutorture.o: In function `rcu_fake_update_stress_test':
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:399: undefined
> reference to `synchronize_rcu_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:389: undefined
> reference to `create_call_rcu_data_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:393: undefined
> reference to `set_thread_call_rcu_data_memb'
> rcutorture_urcu-urcutorture.o: In function `rcu_update_stress_test':
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:362: undefined
> reference to `synchronize_rcu_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:368: undefined
> reference to `call_rcu_memb'
> rcutorture_urcu-urcutorture.o: In function `rcu_read_stress_test':
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:288: undefined
> reference to `rcu_register_thread_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:293: undefined
> reference to `rcu_read_lock_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:297: undefined
> reference to `rcu_read_lock_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:300: undefined
> reference to `rcu_read_unlock_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:302: undefined
> reference to `rcu_read_unlock_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:315: undefined
> reference to `rcu_unregister_thread_memb'
> rcutorture_urcu-urcutorture.o: In function `rcu_update_perf_test':
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:171: undefined
> reference to `synchronize_rcu_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:160: undefined
> reference to `create_call_rcu_data_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:164: undefined
> reference to `set_thread_call_rcu_data_memb'
> rcutorture_urcu-urcutorture.o: In function `rcu_read_perf_test':
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:127: undefined
> reference to `rcu_register_thread_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:135: undefined
> reference to `rcu_read_lock_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:138: undefined
> reference to `rcu_read_unlock_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:135: undefined
> reference to `rcu_read_lock_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:138: undefined
> reference to `rcu_read_unlock_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:145: undefined
> reference to `get_thread_call_rcu_data_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:146: undefined
> reference to `set_thread_call_rcu_data_memb'
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:148: undefined
> reference to `rcu_unregister_thread_memb'
> rcutorture_urcu-urcutorture.o: In function `main':
> /home/xhenhau/project/userspace-rcu/tests/rcutorture.h:474: undefined
> reference to `create_all_cpu_call_rcu_data_memb'
> collect2: ld returned 1 exit status
> 
> Would be great if someone could give some insight, thanks!
> 
> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
> 

-- 
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com




More information about the lttng-dev mailing list