Skip Menu |

This queue is for tickets about the Wx CPAN distribution.

Report information
The Basics
Id: 121683
Status: open
Priority: 0/
Queue: Wx

People
Owner: Nobody in particular
Requestors: kmx [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: MS Win/x64 - 5.26.0-RC1 + gcc-7.1 + mingw-w64-v5.0.2 failure
The gcc-7.1 + mingw-w64-v5.0.2 is what will be bundled with strawberry perl 5.26.x series.

However Wx fails with "error: '_strtoi64' is not a member of 'std'"

g++  -m64  -O2 -mthreads -m64 -Os   -c -I. -I.. -IC:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\lib -IC:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\include -I. -I. -IC:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\lib -IC:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\include  -I. -I..\.. -IC:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\lib -IC:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\include -s -O2 -DWIN32 -DWIN64 -DCONSERVATIVE -D__USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bitfields -s -O2   -DVERSION=\"0.01\" -DXS_VERSION=\"0.01\"  "-IC:\tmpg\perl\lib\CORE" -DWXPL_EXT -DHAVE_W32API_H -D__WXMSW__ -DNDEBUG -D_UNICODE -DWXUSINGDLL -DNOPCH -DNO_GCC_PRAGMA   -DHAVE_W32API_H -D__WXMSW__ -DNDEBUG -D_UNICODE -DWXUSINGDLL -DNOPCH -DNO_GCC_PRAGMA    -DWXPL_EXT -DHAVE_W32API_H -D__WXMSW__ -DNDEBUG -D_UNICODE -DWXUSINGDLL -DNOPCH -DNO_GCC_PRAGMA   WebView.c
In file included from ..\../cpp/wxapi.h:57:0,
                 from WebView.c:23:
C:/tmpg/c/lib/gcc/x86_64-w64-mingw32/7.1.0/include/c++/bits/basic_string.h: In function 'long long int std::__cxx11::stoll(const string&, std::size_t*, int)':
C:\tmpg\perl\lib\CORE/perl.h:6265:25: error: '_strtoi64' is not a member of 'std'
 #        define strtoll _strtoi64 /* secret handshake */
                         ^
C:\tmpg\perl\lib\CORE/perl.h:6265:25: note: suggested alternative:
In file included from C:/tmpg/c/lib/gcc/x86_64-w64-mingw32/7.1.0/include/c++/cstdlib:75:0,
                 from C:/tmpg/c/lib/gcc/x86_64-w64-mingw32/7.1.0/include/c++/stdlib.h:36,
                 from C:/tmpg/c/x86_64-w64-mingw32/include/assert.h:17,
                 from C:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\include/wx/debug.h:14,
                 from C:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\include/wx/defs.h:700,
                 from ..\../cpp/wxapi.h:26,
                 from WebView.c:23:
C:/tmpg/c/x86_64-w64-mingw32/include/stdlib.h:374:45: note:   '_strtoi64'
   __MINGW_EXTENSION _CRTIMP __int64 __cdecl _strtoi64(const char *_String,char **_EndPtr,int _Radix);
                                             ^~~~~~~~~
In file included from ..\../cpp/wxapi.h:57:0,
                 from WebView.c:23:
C:/tmpg/c/lib/gcc/x86_64-w64-mingw32/7.1.0/include/c++/bits/basic_string.h: In function 'long long unsigned int std::__cxx11::stoull(const string&, std::size_t*, int)':
C:\tmpg\perl\lib\CORE/perl.h:6299:26: error: '_strtoui64' is not a member of 'std'
 #        define strtoull _strtoui64 /* secret handshake */
                          ^
C:\tmpg\perl\lib\CORE/perl.h:6299:26: note: suggested alternative:
In file included from C:/tmpg/c/lib/gcc/x86_64-w64-mingw32/7.1.0/include/c++/cstdlib:75:0,
                 from C:/tmpg/c/lib/gcc/x86_64-w64-mingw32/7.1.0/include/c++/stdlib.h:36,
                 from C:/tmpg/c/x86_64-w64-mingw32/include/assert.h:17,
                 from C:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\include/wx/debug.h:14,
                 from C:\tmpg\perl\site\lib\Alien\wxWidgets\msw_3_0_2_uni_gcc_3_4\include/wx/defs.h:700,
                 from ..\../cpp/wxapi.h:26,
                 from WebView.c:23:
C:/tmpg/c/x86_64-w64-mingw32/include/stdlib.h:376:54: note:   '_strtoui64'
   __MINGW_EXTENSION _CRTIMP unsigned __int64 __cdecl _strtoui64(const char *_String,char **_EndPtr,int _Radix);
                                                      ^~~~~~~~~~

P.S. Alien::Wx seems to build & install fine
From: vhaisman [...] gmail.com
+1 here.
Subject: build.log
Download build.log
application/octet-stream 15.1k

Message body not shown because it is not plain text.

Subject: [rt.cpan.org #121683]
Date: Fri, 16 Jun 2017 13:14:21 +0200
To: bug-Wx [...] rt.cpan.org
From: Kai-Uwe Eckhardt <kuehro [...] posteo.de>
Wx builds and passes the tests after patching perl.h with the following patch (strtoll and strtoul are provided by mingw-w64 and _stroi64 is only needed with Visual C). Kai-Uwe --- /c/users/keckhard/Downloads/Perl/perl-5.26.0/perl.h 2017-05-30 09:58:05 +0000 +++ /c/perl5/perl/lib/CORE/perl.h 2017-06-16 10:02:58 +0000 @@ -6261,7 +6261,7 @@ # ifdef __hpux # define strtoll __strtoll /* secret handshake */ # endif -# ifdef WIN64 +# if defined(WIN64) && defined(_MSC_VER) # define strtoll _strtoi64 /* secret handshake */ # endif # if !defined(Strtol) && defined(HAS_STRTOLL) @@ -6295,7 +6295,7 @@ # ifdef __hpux # define strtoull __strtoull /* secret handshake */ # endif -# ifdef WIN64 +# if defined(WIN64) && defined(_MSC_VER) # define strtoull _strtoui64 /* secret handshake */ # endif # if !defined(Strtoul) && defined(HAS_STRTOULL)
This should now be fixed in blead - see https://rt.perl.org/Ticket/Display.html?id=131726