Re: BFD MinGW build error: implicit declaration of function 'wcsncasecmp'

asmwarrior <[email protected]>
Newsgroups gmane.comp.gdb.devel,gmane.comp.gnu.binutils
Message-ID <[email protected]>
On 2013-12-18 18:06, Pedro Alves wrote:
> Hi there,
>
> Adding the binutils folks.  (bfd is maintained by binutils.)
>
> Looks like fallout from the .rsrc merge support.
>
> On 12/18/2013 09:53 AM, asmwarrior wrote:
>> I see the build error when I build GDB(git head) under MSYS+MinGW, here the is build log
>>
>> mv -f .deps/pe-i386.Tpo .deps/pe-i386.Plo
>> rm -f peigen.c
>> sed -e s/XX/pe/g < ../../binutils-gdb/bfd/peXXigen.c > peigen.new
>> mv -f peigen.new peigen.c
>> /bin/sh ./libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../binutils-gdb/bfd -D__USE_MINGW_FSEEK    -I. -I../../binutils-gdb/bfd -I../../binutils-gdb/bfd/../include  -DHAVE_i386pe_vec -DHAVE_i386pei_vec -DHAVE_bfd_elf32_i386_vec -DHAVE_bfd_elf32_little_generic_vec -DHAVE_bfd_elf32_big_generic_vec  -DBINDIR='"/mingw/bin"'  -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wno-format -Werror -O0 -g -D__USE_MINGW_ACCESS -MT peigen.lo -MD -MP -MF .deps/peigen.Tpo -c -o peigen.lo peigen.c
>> libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../../binutils-gdb/bfd -D__USE_MINGW_FSEEK -I. -I../../binutils-gdb/bfd -I../../binutils-gdb/bfd/../include -DHAVE_i386pe_vec -DHAVE_i386pei_vec -DHAVE_bfd_elf32_i386_vec -DHAVE_bfd_elf32_little_generic_vec -DHAVE_bfd_elf32_big_generic_vec -DBINDIR=\"/mingw/bin\" -W -Wall -Wstrict-prototypes -Wmissing-prototypes -Wshadow -Wno-format -Werror -O0 -g -D__USE_MINGW_ACCESS -MT peigen.lo -MD -MP -MF .deps/peigen.Tpo -c peigen.c -o peigen.o
>> peigen.c: In function 'rsrc_cmp':
>> peigen.c:3006:7: error: implicit declaration of function 'wcsncasecmp' [-Werror=implicit-function-declaration]
>>        res = wcsncasecmp (& awc, & bwc, 1);
>>        ^
>> cc1.exe: all warnings being treated as errors
>> make[4]: *** [peigen.lo] Error 1
>> make[4]: Leaving directory `/f/build_gdb/mybuild/bfd'
>> make[3]: *** [all-recursive] Error 1
>> make[3]: Leaving directory `/f/build_gdb/mybuild/bfd'
>> make[2]: *** [all] Error 2
I think under Windows, there is a function: (in wchar.h under my MinGW-W64 toolchain)

_CRTIMP int __cdecl _wcsnicmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);

See:http://msdn.microsoft.com/en-us/library/chd90w8e.aspx

Thanks.

Yuanhui Zhang
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.