2017-10-05 102 views
1

我一直在試圖在Cygwin中構建wxWidgets 3.1.0。我跟着INSTALL.TXT描述的過程,總結如下:無法在Cygwin上構建wxWidgets - xlocale.h

cd $WXWIN 
mkdir build-debug 
cd build-debug 
../configure --enable-debug 
make -j4 

我也嘗試了一些其他的標誌的配置,如--with-X11,由this作爲指導建議。然而,我不斷收到的錯誤如下:

/home/acohen8/wxWidgets-3.1.0/build-debug/bk-deps g++ -c -o basedll_strvararg.o -D__WXMSW__  -DWXBUILDING  -I../src/regex -DwxUSE_GUI=0 -DWXMAKINGDLL_BASE -DwxUSE_BASE=1 -Wall -Wundef -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual -D_FILE_OFFSET_BITS=64 -I/home/acohen8/wxWidgets-3.1.0/build-debug/lib/wx/include/msw-unicode-3.1 -I../include -g -O0 ../src/common/strvararg.cpp 
In file included from ../src/common/string.cpp:39:0: 
../include/wx/xlocale.h: In function ‘double wxStrtod_lA(const char*, char**, const wxXLocale&)’: 
../include/wx/xlocale.h:243:54: error: ‘strtod_l’ was not declared in this scope 
     { return wxCRT_Strtod_lA(c, endptr, loc.Get()); } 
                ^
../include/wx/xlocale.h: In function ‘long int wxStrtol_lA(const char*, char**, int, const wxXLocale&)’: 
../include/wx/xlocale.h:245:60: error: ‘strtol_l’ was not declared in this scope 
     { return wxCRT_Strtol_lA(c, endptr, base, loc.Get()); } 
                  ^
../include/wx/xlocale.h: In function ‘long unsigned int wxStrtoul_lA(const char*, char**, int, const wxXLocale&)’: 
../include/wx/xlocale.h:247:61: error: ‘strtoul_l’ was not declared in this scope 
     { return wxCRT_Strtoul_lA(c, endptr, base, loc.Get()); } 
                  ^
../include/wx/xlocale.h: In function ‘double wxStrtod_l(const wchar_t*, wchar_t**, const wxXLocale&)’: 
../include/wx/xlocale.h:301:58: error: ‘wcstod_l’ was not declared in this scope 
      { return wxCRT_Strtod_lW(c, endptr, loc.Get()); } 
                 ^
../include/wx/xlocale.h: In function ‘long int wxStrtol_l(const wchar_t*, wchar_t**, int, const wxXLocale&)’: 
../include/wx/xlocale.h:303:64: error: ‘wcstol_l’ was not declared in this scope 
      { return wxCRT_Strtol_lW(c, endptr, base, loc.Get()); } 
                   ^
../include/wx/xlocale.h: In function ‘long unsigned int wxStrtoul_l(const wchar_t*, wchar_t**, int, const wxXLocale&)’: 
../include/wx/xlocale.h:305:65: error: ‘wcstoul_l’ was not declared in this scope 
      { return wxCRT_Strtoul_lW(c, endptr, base, loc.Get()); } 
                   ^
/home/acohen8/wxWidgets-3.1.0/build-debug/bk-deps g++ -c -o basedll_sysopt.o -D__WXMSW__  -DWXBUILDING  -I../src/regex -DwxUSE_GUI=0 -DWXMAKINGDLL_BASE -DwxUSE_BASE=1 -Wall -Wundef -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual -D_FILE_OFFSET_BITS=64 -I/home/acohen8/wxWidgets-3.1.0/build-debug/lib/wx/include/msw-unicode-3.1 -I../include -g -O0 ../src/common/sysopt.cpp 
make: *** [Makefile:25366: basedll_string.o] Error 1 
make: *** Waiting for unfinished jobs.... 

我非常感激這方面的一些建議!

回答

0

這很可能已經在wx的git master by this commit中修復了。但是,您可以使用configure --disable-xlocale解決該問題。