[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Libunwind-devel] 'make check' failure armv7hl e9e50d0
From: |
Dave Watson |
Subject: |
Re: [Libunwind-devel] 'make check' failure armv7hl e9e50d0 |
Date: |
Thu, 24 Aug 2017 09:36:12 -0700 |
User-agent: |
Mutt/1.6.0 (2016-04-01) |
On 08/23/17 11:30 AM, Philippe De Muyter wrote:
> Hi,
>
> I cloned libunwind yesterday (hash e9e50d0) and built it on my armv7hl
> board with suse linux 13.1.
>
> Unfortunately, 'make check' fails with :
>
> address@hidden:~/libunwind> make check
> Making check in src
> make[1]: Entering directory `/home/phdm/libunwind/src'
> make check-am
> make[2]: Entering directory `/home/phdm/libunwind/src'
> make[2]: Nothing to be done for `check-am'.
> make[2]: Leaving directory `/home/phdm/libunwind/src'
> make[1]: Leaving directory `/home/phdm/libunwind/src'
> Making check in tests
> make[1]: Entering directory `/home/phdm/libunwind/tests'
> make test-proc-info test-static-link test-strerror Gtest-bt Ltest-bt
> Gtest-exc Ltest-exc Gtest-init Ltest-init Gtest-concurrent Ltest-concurrent
> Gtest-resume-sig Ltest-resume-sig Gtest-resume-sig-rt Ltest-resume-sig-rt
> Gtest-trace Ltest-trace Ltest-init-local-signal test-async-sig
> test-flush-cache test-init-remote test-mem test-reg-state Ltest-varargs
> Ltest-nomalloc Ltest-nocalloc Lrs-race test-ptrace test-setjmp
> run-check-namespace run-ptrace-mapper run-ptrace-misc run-coredump-unwind
> run-coredump-unwind-mdi
> make[2]: Entering directory `/home/phdm/libunwind/tests'
> make[2]: `test-proc-info' is up to date.
> /bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -fexceptions -Wall
> -Wsign-compare -static -o test-static-link test-static-link-loc.o
> test-static-link-gen.o ../src/libunwind-arm.la
> libtool: link: gcc -g -O2 -fexceptions -Wall -Wsign-compare -o
> test-static-link test-static-link-loc.o test-static-link-gen.o
> ../src/.libs/libunwind-arm.a /home/phdm/libunwind/src/.libs/libunwind.a
> -lgcc_s -llzma -lc
> /home/phdm/libunwind/src/.libs/libunwind.a(Lex_tables.o): In function
> `arm_search_unwind_table':
> /home/phdm/libunwind/src/arm/Gex_tables.c:388: multiple definition of
> `arm_search_unwind_table'
> ../src/.libs/libunwind-arm.a(Gex_tables.o):/home/phdm/libunwind/src/arm/Gex_tables.c:388:
> first defined here
> collect2: error: ld returned 1 exit status
> make[2]: *** [test-static-link] Error 1
> make[2]: Leaving directory `/home/phdm/libunwind/tests'
> make[1]: *** [check-am] Error 2
> make[1]: Leaving directory `/home/phdm/libunwind/tests'
> make: *** [check-recursive] Error 1
> address@hidden:~/libunwind>
One of these two should work, not sure which:
diff --git a/src/arm/Gex_tables.c b/src/arm/Gex_tables.c
index 3f6b5cf..88c36a3 100644
--- a/src/arm/Gex_tables.c
+++ b/src/arm/Gex_tables.c
@@ -381,7 +381,7 @@ arm_exidx_extract (struct dwarf_cursor *c, uint8_t *buf)
return nbuf;
}
-PROTECTED int
+static int
arm_search_unwind_table (unw_addr_space_t as, unw_word_t ip,
unw_dyn_info_t *di, unw_proc_info_t *pi,
int need_unwind_info, void *arg)
or maybe
diff --git a/include/tdep-arm/ex_tables.h b/include/tdep-arm/ex_tables.h
index 9df5e0a..0b5388a 100644
--- a/include/tdep-arm/ex_tables.h
+++ b/include/tdep-arm/ex_tables.h
@@ -47,6 +47,7 @@ struct arm_exbuf_data
#define arm_exidx_extract UNW_OBJ(arm_exidx_extract)
#define arm_exidx_decode UNW_OBJ(arm_exidx_decode)
#define arm_exidx_apply_cmd UNW_OBJ(arm_exidx_apply_cmd)
+#define arm_search_unwind_table UNW_OBJ(arm_search_unwind_table)
int arm_exidx_extract (struct dwarf_cursor *c, uint8_t *buf);
int arm_exidx_decode (const uint8_t *buf, uint8_t len, struct dwarf_cursor *c);