GDB 8.1 build error

Paul Koning paulkoning@comcast.net
Fri Apr 27 18:57:00 GMT 2018



> On Apr 27, 2018, at 2:02 PM, Simon Marchi <simon.marchi@polymtl.ca> wrote:
> 
> On 2018-04-26 19:48, Paul Koning wrote:
>> I can't build GDB on Mac.  This shows up both in a native build, and a
>> cross-build (for example target=mips-netbsdelf).  I see this error:
>> /Users/pkoning/Downloads/gdb-8.1/gdb/stap-probe.c:122:29: error: default
>>      initialization of an object of const type 'const stap_static_probe_ops'
>>      without a user-provided default constructor
>> const stap_static_probe_ops stap_static_probe_ops;
>> or
>> /Users/pkoning/Downloads/gdb-8.1/gdb/probe.c:63:28: error: default
>>      initialization of an object of const type 'const any_static_probe_ops'
>>      without a user-provided default constructor
>> const any_static_probe_ops any_static_probe_ops;
>> (same problem, different source file).
>> 	paul
> 
> Hi Paul,
> 
> What is the compiler, which version, and can you share the full command line used to compile probe.o, for example?
> 
> Simon

I had deleted the build test directory, so I repeated the operation.  Got a failure again but a completely different one:

g++ -x c++ -std=gnu++11 -g -O2   -I. -I/Users/pkoning/Downloads/gdb-8.1/gdb -I/Users/pkoning/Downloads/gdb-8.1/gdb/common -I/Users/pkoning/Downloads/gdb-8.1/gdb/config -DLOCALEDIR="\"/usr/local/trunk/share/locale\"" -DHAVE_CONFIG_H -I/Users/pkoning/Downloads/gdb-8.1/gdb/../include/opcode -I/Users/pkoning/Downloads/gdb-8.1/gdb/../opcodes/.. -I/Users/pkoning/Downloads/gdb-8.1/gdb/../readline/.. -I/Users/pkoning/Downloads/gdb-8.1/gdb/../zlib -I../bfd -I/Users/pkoning/Downloads/gdb-8.1/gdb/../bfd -I/Users/pkoning/Downloads/gdb-8.1/gdb/../include -I../libdecnumber -I/Users/pkoning/Downloads/gdb-8.1/gdb/../libdecnumber  -I/Users/pkoning/Downloads/gdb-8.1/gdb/gnulib/import -Ibuild-gnulib/import   -DTUI=1  -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -w  -c -o completer.o -MT completer.o -MMD -MP -MF ./.deps/completer.Tpo /Users/pkoning/Downloads/gdb-8.1/gdb/completer.c

/Users/pkoning/Downloads/gdb-8.1/gdb/completer.c:2041:23: error: 
      non-constant-expression cannot be narrowed from type 'int' to 'char' in
      initializer list [-Wc++11-narrowing]
      char buf[2] = { quote_char () };
                      ^~~~~~~~~~~~~
/Users/pkoning/Downloads/gdb-8.1/gdb/completer.c:2041:23: note: insert an
      explicit cast to silence this issue
      char buf[2] = { quote_char () };
                      ^~~~~~~~~~~~~
                      static_cast<char>( )

I then asked specifically for probe.o ("cd gdb && make probe.o"):

g++ -x c++ -std=gnu++11 -g -O2   -I. -I/Users/pkoning/Downloads/gdb-8.1/gdb -I/Users/pkoning/Downloads/gdb-8.1/gdb/common -I/Users/pkoning/Downloads/gdb-8.1/gdb/config -DLOCALEDIR="\"/usr/local/trunk/share/locale\"" -DHAVE_CONFIG_H -I/Users/pkoning/Downloads/gdb-8.1/gdb/../include/opcode -I/Users/pkoning/Downloads/gdb-8.1/gdb/../opcodes/.. -I/Users/pkoning/Downloads/gdb-8.1/gdb/../readline/.. -I/Users/pkoning/Downloads/gdb-8.1/gdb/../zlib -I../bfd -I/Users/pkoning/Downloads/gdb-8.1/gdb/../bfd -I/Users/pkoning/Downloads/gdb-8.1/gdb/../include -I../libdecnumber -I/Users/pkoning/Downloads/gdb-8.1/gdb/../libdecnumber  -I/Users/pkoning/Downloads/gdb-8.1/gdb/gnulib/import -Ibuild-gnulib/import   -DTUI=1  -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -w  -c -o probe.o -MT probe.o -MMD -MP -MF ./.deps/probe.Tpo /Users/pkoning/Downloads/gdb-8.1/gdb/probe.c
/Users/pkoning/Downloads/gdb-8.1/gdb/probe.c:63:28: error: default
      initialization of an object of const type 'const any_static_probe_ops'
      without a user-provided default constructor
const any_static_probe_ops any_static_probe_ops;
                           ^
                                               {}



Paul-Konings-MacBook-Pro:buildgdb pkoning$ gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.3.0 (clang-703.0.31)
Target: x86_64-apple-darwin17.5.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Paul-Konings-MacBook-Pro:buildgdb pkoning$ head config.log
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.64.  Invocation command line was

  $ /Users/pkoning/Downloads/gdb-8.1/configure --prefix=/usr/local/trunk --disable-build-warnings


OS is Mac OS 10.13.4.

These appear to be LLVM incompatibilities; if I feed those command lines to (real) GCC 8.0, just built yesterday from current trunk, they compile cleanly.

	paul



More information about the Gdb mailing list