http://sourceware.org/ml/gdb-patches/2014-08/msg00045.html Subject: [patch] Fix --with-babeltrace with gcc-4.9.1 --qMm9M+Fa2AknHoGS Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi, when I tried to use --with-babeltrace on Fedora Rawhide x86_64 using gcc-4.9.1-3.fc22.x86_64 I got: checking for libbabeltrace... no configure: error: babeltrace is missing or unusable Makefile:7973: recipe for target 'configure-gdb' failed configure:15890: checking for libbabeltrace configure:15918: gcc -o conftest -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Werror -static-libstdc++ -static-libgcc -Wl,-z,relro conftest.c -lselinux -lncurses -lz -lm -ldl /usr/lib64/libbabeltrace.so /usr/lib64/libbabeltrace-ctf.so >&5 conftest.c: In function 'main': conftest.c:198:21: error: unused variable 'pos' [-Werror=unused-variable] struct bt_iter_pos *pos = bt_iter_get_pos (bt_ctf_get_iter (NULL)); ^ cc1: all warnings being treated as errors configure:15918: $? = 1 configure: failed program was: The patch below fixes it for me. In configure.ac there is above this check: # Append -Werror to CFLAGS so that configure can catch the warning # "assignment from incompatible pointer type", which is related to # the babeltrace change from 1.0.3 to 1.1.0. Babeltrace 1.1.0 works # in GDB, while babeltrace 1.0.3 is broken. # AC_LIB_HAVE_LINKFLAGS may modify CPPFLAGS in it, so it should be # safe to save and restore CFLAGS here. saved_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -Werror" Maybe it would be easier to use there: CFLAGS="$CFLAGS -Werror -Wno-unused-variable" But maybe -Werror is cross-compiler compatible while -Wno-unused-variable is not, I have no idea. Jan --qMm9M+Fa2AknHoGS Content-Type: text/plain; charset=us-ascii Content-Disposition: inline; filename="gdb-babeltrace-configure.patch" gdb/ 2014-08-04 Jan Kratochvil * configure.ac (--with-babeltrace): Use 'pos'. * configure: Regenerate. diff --git a/gdb/configure.ac b/gdb/configure.ac index 70d0964..07d2f00 100644 --- a/gdb/configure.ac +++ b/gdb/configure.ac @@ -2437,6 +2437,7 @@ else struct bt_ctf_event *event = NULL; const struct bt_definition *scope; + (void) pos; /* Prevent -Werror=unused-variable. */ scope = bt_ctf_get_top_level_scope (event, BT_STREAM_EVENT_HEADER); bt_ctf_get_uint64 (bt_ctf_get_field (event, scope, "id")); diff --git a/gdb/configure b/gdb/configure index 809326a..b983d16 100755 --- a/gdb/configure +++ b/gdb/configure @@ -15344,6 +15344,7 @@ struct bt_iter_pos *pos = bt_iter_get_pos (bt_ctf_get_iter (NULL)); struct bt_ctf_event *event = NULL; const struct bt_definition *scope; + (void) pos; /* Prevent -Werror=unused-variable. */ scope = bt_ctf_get_top_level_scope (event, BT_STREAM_EVENT_HEADER); bt_ctf_get_uint64 (bt_ctf_get_field (event, scope, "id")); --qMm9M+Fa2AknHoGS--