During compilation I receive error:
mingw32-g++.exe -Wall -mms-bitfields -pipe -mthreads -D__WX__ -D__WXMSW__ -DWXUSINGDLL -DWX_PRECOMP -O3 -Wall -Winvalid-pch -include "wx_pch.h" -fno-strict-aliasing -DWXMAKINGDLL_SF -DWXMAKINGDLL_XS -DWIN32 -D_WINDOWS -DNDEBUG -I..\host\include -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\include -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\lib\wx\include\msw-ansi-release-2.8 -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\\contrib\include -I..\include -I..\src -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\include -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\lib\gcc_dll\msw -IC:\Dev\MINGW\include -c h:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\contrib\wxSF\src\BitmapShape.cpp -o .objs\BitmapShape.o
In file included from ../include/wx/wxsf/ShapeBase.h:23,
from ../include/wx/wxsf/RectShape.h:13,
from ../include/wx/wxsf/BitmapShape.h:13,
from h:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\contrib\wxSF\src\BitmapShape.cpp:12:
../include/wx/wxsf/../wxxmlserializer/XmlSerializer.h:163: error: ISO C++ forbids declaration of `wxSerializableListNode' with no type
...
my wx configuration is:
../configure --with-msw --enable-monolithic --enable-shared --disable-debug --enable-optimise --with-opengl --enable-stl --enable-std_iostreams --enable-std_string --with-zlib=builtin --with-libjpeg=builtin --with-libtiff=builtin --with-libpng=builtin
I'm novice wx user, but probably the problem is with --enable-stl (wxSerializableListNode* GetFirstChildNode(){return m_lstChildItems.GetFirst();} should return SerializableList::compatibility_iterator not a pointer)
Thank you for help
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi, thank you for the feedback! You are right, it looks like the wxWidgets list implementation has changed (I don't use STL in wxWidgets so I didn't noticed it) so I must rewrite my code to support STL lists. I'll do it as soon as possible so check the project site (especially SVN code repository) for the latest updates.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
After comment all:
m_pCurrentCanvasState = NULL; (CanvasHistory.cpp)
and change all:
wxNode* node = points->GetFirst(); (ScaledPaintDC.cpp)
to
wxList::compatibility_iterator node = points->GetFirst();
I can compile library, samples and demo.
Samples run ok, demo starts, takes 100% of processor power but doesn't show anything ;) (I'll be investigate this later)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Oh sh**, it looks like I have to compile the WX with STL support and try to fix it again :) Sorry for any inconvinience and please be patient, I promise I'll fix it (as soon as possible)!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hopefully, the problem is fixed in the revision 66. I've tested it on the wxMSW 2.8.7 compiled with wxUSE_STL=1 (using MinGW 3.4.5) and everything have worked fine.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank you Michał. It's going like a charm, now. The demo, as well. :)
I have one suggestion.
During library and sample compilation, thera are build 5 wx_pch.h.gch files, 50M each. Probably, it will be better either use wx "vative" precompiled header
#include <wx/wxprec.h>
#ifndef WX_PRECOMP
#include <wx/wx.h>
#endif
or move your wx_pch.h to one common directory.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
During compilation I receive error:
mingw32-g++.exe -Wall -mms-bitfields -pipe -mthreads -D__WX__ -D__WXMSW__ -DWXUSINGDLL -DWX_PRECOMP -O3 -Wall -Winvalid-pch -include "wx_pch.h" -fno-strict-aliasing -DWXMAKINGDLL_SF -DWXMAKINGDLL_XS -DWIN32 -D_WINDOWS -DNDEBUG -I..\host\include -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\include -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\lib\wx\include\msw-ansi-release-2.8 -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\\contrib\include -I..\include -I..\src -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\include -IH:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\lib\gcc_dll\msw -IC:\Dev\MINGW\include -c h:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\contrib\wxSF\src\BitmapShape.cpp -o .objs\BitmapShape.o
In file included from ../include/wx/wxsf/ShapeBase.h:23,
from ../include/wx/wxsf/RectShape.h:13,
from ../include/wx/wxsf/BitmapShape.h:13,
from h:\Dev\Libs\wxWidgets\wxWidgets-2.8.7\build-release\contrib\wxSF\src\BitmapShape.cpp:12:
../include/wx/wxsf/../wxxmlserializer/XmlSerializer.h:163: error: ISO C++ forbids declaration of `wxSerializableListNode' with no type
...
my wx configuration is:
../configure --with-msw --enable-monolithic --enable-shared --disable-debug --enable-optimise --with-opengl --enable-stl --enable-std_iostreams --enable-std_string --with-zlib=builtin --with-libjpeg=builtin --with-libtiff=builtin --with-libpng=builtin
I'm novice wx user, but probably the problem is with --enable-stl (wxSerializableListNode* GetFirstChildNode(){return m_lstChildItems.GetFirst();} should return SerializableList::compatibility_iterator not a pointer)
Thank you for help
Hi, thank you for the feedback! You are right, it looks like the wxWidgets list implementation has changed (I don't use STL in wxWidgets so I didn't noticed it) so I must rewrite my code to support STL lists. I'll do it as soon as possible so check the project site (especially SVN code repository) for the latest updates.
To puzuma: the problem should be fixed in revision 65 so checkout the SVN code. If the problem persists please inform me.
After comment all:
m_pCurrentCanvasState = NULL; (CanvasHistory.cpp)
and change all:
wxNode* node = points->GetFirst(); (ScaledPaintDC.cpp)
to
wxList::compatibility_iterator node = points->GetFirst();
I can compile library, samples and demo.
Samples run ok, demo starts, takes 100% of processor power but doesn't show anything ;) (I'll be investigate this later)
Oh sh**, it looks like I have to compile the WX with STL support and try to fix it again :) Sorry for any inconvinience and please be patient, I promise I'll fix it (as soon as possible)!
Hopefully, the problem is fixed in the revision 66. I've tested it on the wxMSW 2.8.7 compiled with wxUSE_STL=1 (using MinGW 3.4.5) and everything have worked fine.
Thank you Michał. It's going like a charm, now. The demo, as well. :)
I have one suggestion.
During library and sample compilation, thera are build 5 wx_pch.h.gch files, 50M each. Probably, it will be better either use wx "vative" precompiled header
#include <wx/wxprec.h>
#ifndef WX_PRECOMP
#include <wx/wx.h>
#endif
or move your wx_pch.h to one common directory.