Re: i586: make test: event-parse.c:5643:(.text+0x16e6): undefined reference to `_tep_local___stack_chk_fail_local'
Steven Rostedt <[email protected]> Tue, 30 Dec 2025 09:57:34 -0500
| Newsgroups | org.kernel.vger.linux-trace-devel |
|---|---|
| Message-ID | <[email protected]> |
On Tue, 30 Dec 2025 09:51:43 -0500 Steven Rostedt <[email protected]> wrote: > > [00:00:30] ( gcc /usr/src/RPM/BUILD/libtraceevent-1.8.5/utest/trace-utest.o /usr/src/RPM/BUILD/libtraceevent-1.8.5/utest/traceevent-utest.o /usr/src/RPM/BUILD/libtraceevent-1.8.5/lib/libtraceevent.a -rdynamic -o /usr/src/RPM/BUILD/libtraceevent-1.8.5/utest/trace-utest -ldl -lcunit -ldl /usr/src/RPM/BUILD/libtraceevent-1.8.5/lib/libtraceevent.a) > > [00:00:30] ld: /usr/src/RPM/BUILD/libtraceevent-1.8.5/lib/libtraceevent.a(event-parse.o): in function `print_ip6c_addr': > > [00:00:30] /usr/src/RPM/BUILD/libtraceevent-1.8.5/src/event-parse.c:5643:(.text+0x16e6): undefined reference to `_tep_local___stack_chk_fail_local' > > This looks like the code that is used to hide internal global functions in > the static library. I'll have to set up a x86_32 VM and see if I can > reproduce it. I forgot I had a 32bit VM available. I tried it there and it gave me: ~# make test DESCEND src libtraceevent.a DESCEND utest test COMPILE FPIC trace-utest.o COMPILE FPIC traceevent-utest.o traceevent-utest.c: In function ‘test_btf_read’: traceevent-utest.c:385:33: warning: unsigned conversion from ‘long long int’ to ‘long unsigned int’ changes value from ‘140730998977488’ to ‘2100556752’ [-Woverflow] 385 | unsigned long args[] = {0x7ffe7d33f3d0, 0, 0, 0, 0, 0}; | ^~~~~~~~~~~~~~ BUILD trace-utest /usr/bin/ld: /work/git/libtraceevent.git/lib/libtraceevent.a(event-parse.o): in function `consolidate_op_arg': /work/git/libtraceevent.git/src/event-parse.c:2302: undefined reference to `_tep_local___udivdi3' /usr/bin/ld: /work/git/libtraceevent.git/src/event-parse.c:2305: undefined reference to `_tep_local___umoddi3' /usr/bin/ld: /work/git/libtraceevent.git/lib/libtraceevent.a(event-parse.o): in function `eval_num_arg': /work/git/libtraceevent.git/src/event-parse.c:4561: undefined reference to `_tep_local___udivdi3' /usr/bin/ld: /work/git/libtraceevent.git/src/event-parse.c:4564: undefined reference to `_tep_local___umoddi3' /usr/bin/ld: /work/git/libtraceevent.git/lib/libtraceevent.a(event-parse.o): in function `print_event_time': /work/git/libtraceevent.git/src/event-parse.c:7168: undefined reference to `_tep_local___udivdi3' /usr/bin/ld: /work/git/libtraceevent.git/src/event-parse.c:7175: undefined reference to `_tep_local___umoddi3' /usr/bin/ld: /work/git/libtraceevent.git/src/event-parse.c:7175: undefined reference to `_tep_local___udivdi3' collect2: error: ld returned 1 exit status make[1]: *** [Makefile:22: /work/git/libtraceevent.git/utest/trace-utest] Error 1 make: *** [Makefile:258: test] Error 2 I have a pretty good idea what the issue is. Thanks for reporting it. -- Steve