Ich versuche wxWidgets 3.0.2 Projekt auf Windows 10 mit TDM-GCC 4.7.1 32bit zu kompilieren, erhalte ich diesen Fehler unter:WxWidgets Projekt Kompilierung schlägt fehl unter Windows 10 mit TDM-GCC
Compilation
mingw32-g++.exe -Wall -pipe -mthreads -D__GNUWIN32__ -D__WXMSW__ -DWXUSINGDLL -DwxUSE_UNICODE -Wall -std=c++11 -g -Wall -std=c++11 -g -Ilibrary\xerces-c-3.1.1\src -Ilibrary\mupdf-1.6\include -Ilibrary\wxWidgets-3.0.2\include -Ilibrary\wxWidgets-3.0.2\lib\wx\include\msw-unicode-3.0\ -Iinclude -IC:\TDM471-32\include -IC:\TDM471-32\include -c F:\Proj\Document.cpp -o obj\Debug\Document.o
Fehler
In file included from library\wxWidgets-3.0.2\include/wx/string.h:45:0,
from library\wxWidgets-3.0.2\include/wx/memory.h:15,
from library\wxWidgets-3.0.2\include/wx/object.h:19,
from library\wxWidgets-3.0.2\include/wx/wx.h:15,
from F:\Proj\Document.h:4,
from F:\Proj\Document.cpp:1:
library\wxWidgets-3.0.2\include/wx/wxcrtbase.h: In function 'wchar_t* wxStrdup(const wchar_t*)':
library\wxWidgets-3.0.2\include/wx/wxcrtbase.h:680:68: error: 'wcsdup' was not declared in this scope
In file included from library\wxWidgets-3.0.2\include/wx/string.h:45:0,
from library\wxWidgets-3.0.2\include/wx/memory.h:15,
from library\wxWidgets-3.0.2\include/wx/object.h:19,
from library\wxWidgets-3.0.2\include/wx/wx.h:15,
from F:\Proj\Main.cpp:1:
library\wxWidgets-3.0.2\include/wx/wxcrtbase.h: In function 'wchar_t* wxStrdup(const wchar_t*)':
library\wxWidgets-3.0.2\include/wx/wxcrtbase.h:680:68: error: 'wcsdup' was not declared in this scope
In file included from library\wxWidgets-3.0.2\include/wx/crt.h:19:0,
In file included from library\wxWidgets-3.0.2\include/wx/crt.h:19:0,
from library\wxWidgets-3.0.2\include/wx/string.h:4305,
from library\wxWidgets-3.0.2\include/wx/memory.h:15,
from library\wxWidgets-3.0.2\include/wx/object.h:19,
from library\wxWidgets-3.0.2\include/wx/wx.h:15,
from F:\Proj\Document.h:4,
from F:\Proj\Document.cpp:1:
library\wxWidgets-3.0.2\include/wx/wxcrt.h: In function 'size_t wxStrnlen(const char*, size_t)':
library\wxWidgets-3.0.2\include/wx/wxcrt.h:173:92: error: 'strnlen' was not declared in this scope
library\wxWidgets-3.0.2\include/wx/wxcrt.h: In function 'size_t wxStrnlen(const wchar_t*, size_t)':
library\wxWidgets-3.0.2\include/wx/wxcrt.h:187:95: error: 'wcsnlen' was not declared in this scope
from library\wxWidgets-3.0.2\include/wx/string.h:4305,
from library\wxWidgets-3.0.2\include/wx/memory.h:15,
from library\wxWidgets-3.0.2\include/wx/object.h:19,
from library\wxWidgets-3.0.2\include/wx/wx.h:15,
from F:\Proj\Main.cpp:1:
library\wxWidgets-3.0.2\include/wx/wxcrt.h: In function 'size_t wxStrnlen(const char*, size_t)':
library\wxWidgets-3.0.2\include/wx/wxcrt.h:173:92: error: 'strnlen' was not declared in this scope
library\wxWidgets-3.0.2\include/wx/wxcrt.h: In function 'size_t wxStrnlen(const wchar_t*, size_t)':
library\wxWidgets-3.0.2\include/wx/wxcrt.h:187:95: error: 'wcsnlen' was not declared in this scope
Haben Sie zuerst eine Konfiguration durchgeführt oder verwenden Sie Makefile direkt? – Igor
Was meinst du? wxWidgets ist kompiliert, ich verwende es als Bibliothek, um cpp-Projekt zu kompilieren, das damit verbunden ist. – Kikapi
also kommen diese Fehler vom Projekt und nicht von der Bibliothek selbst? Welche Version von gcc verwendest du? Wo hast du es her? Haben Sie wx mit dem gleichen Compiler erstellt? Wie bauen Sie Ihr Projekt? – Igor