我遇到了以下我为gdb运行make的错误。 这是在运行带有i7处理器的OS X 10.8.5的mac上运行configure之后。
$ gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --withgxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.76) (based on LLVM 3.3svn
Target: x86_64-apple-darwin12.5.0
Thread model: posix
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12078:18: error: adding 'char' to a string does not append to the string [-Werror,-Wstring-plus-int]
oappend ("%st" + intel_syntax);
~~~~~~^~~~~~~~~~~~~~
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12078:18: note: use array indexing to silence this warning
oappend ("%st" + intel_syntax);
^
& [ ]
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12609:23: error: adding 'char' to a string does not append to the string [-Werror,-Wstring-plus-int]
oappend ("%cs:" + intel_syntax);
~~~~~~~^~~~~~~~~~~~~~
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12609:23: note: use array indexing to silence this warning
oappend ("%cs:" + intel_syntax);
^
& [ ]
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12614:23: error: adding 'char' to a string does not append to the string [-Werror,-Wstring-plus-int]
oappend ("%ds:" + intel_syntax);
~~~~~~~^~~~~~~~~~~~~~
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12614:23: note: use array indexing to silence this warning
oappend ("%ds:" + intel_syntax);
^
& [ ]
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12619:23: error: adding 'char' to a string does not append to the string [-Werror,-Wstring-plus-int]
oappend ("%ss:" + intel_syntax);
~~~~~~~^~~~~~~~~~~~~~
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12619:23: note: use array indexing to silence this warning
oappend ("%ss:" + intel_syntax);
^
& [ ]
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12624:23: error: adding 'char' to a string does not append to the string [-Werror,-Wstring-plus-int]
oappend ("%es:" + intel_syntax);
~~~~~~~^~~~~~~~~~~~~~
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12624:23: note: use array indexing to silence this warning
oappend ("%es:" + intel_syntax);
^
& [ ]
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12629:23: error: adding 'char' to a string does not append to the string [-Werror,-Wstring-plus-int]
oappend ("%fs:" + intel_syntax);
~~~~~~~^~~~~~~~~~~~~~
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12629:23: note: use array indexing to silence this warning
oappend ("%fs:" + intel_syntax);
^
& [ ]
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12634:23: error: adding 'char' to a string does not append to the string [-Werror,-Wstring-plus-int]
oappend ("%gs:" + intel_syntax);
~~~~~~~^~~~~~~~~~~~~~
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:12634:23: note: use array indexing to silence this warning
oappend ("%gs:" + intel_syntax);
^
& [ ]
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:13973:19: error: adding 'char' to a string does not append to the string [-Werror,-Wstring-plus-int]
oappend ("%es:" + intel_syntax);
~~~~~~~^~~~~~~~~~~~~~
/Users/sbala/Downloads/gdb-7.6/opcodes/i386-dis.c:13973:19: note: use array indexing to silence this warning
oappend ("%es:" + intel_syntax);
^
& [ ]
8 errors generated.
make[4]: *** [i386-dis.lo] Error 1
make[3]: *** [all-recursive] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-opcodes] Error 2
make: *** [all] Error 2"
如果您需要更多详细信息,请与我们联系。
答案 0 :(得分:6)
在OSX上构建gdb-7.6.1时,默认情况下启用了--enable-werror。
./configure --disable-werror
make
对我来说很好。
答案 1 :(得分:5)
编译器过于挑剔,因此它会针对涉及字符串文字的指针算法发出警告。此外,您可能已将gdb
配置为--enable-werror
或-Werror
从某处继承,因此这些无害警告会变为错误。 (您只显示了编译器的配置标志,而不是gdb
。)
解决方案:关闭-Werror
,或专门使用-Wno-string-plus-int
(添加到CFLAGS
)沉默此警告