News:

As usual while waiting for the next release - don't forget to check the nightly builds in the forum.

Main Menu

How to compile C::B when wxWidgets is STL enabled?

Started by tomay3000, July 18, 2018, 07:21:33 PM

Previous topic - Next topic

tomay3000

Hello,
I have successfully compiled wxWidgets v3.1.1 with stl enabled using this command:
cd wxWidgets

mkdir gtk2-build

cd gtk2-build

../configure --enable-unicode --enable-debug --with-gtk=2 --enable-mediactrl --with-opengl --enable-stl --with-regex --with-libmspack --with-sdl --enable-cxx11

make

sudo make install


But when I try to compile C::B for this wxWidgets configuration (stl is enabled) I get this error message:
Making all in src
make[1]: Entering directory '/home/tomay/devel/CodeBlocks/trunk/src'
Making all in include
make[2]: Entering directory '/home/tomay/devel/CodeBlocks/trunk/src/include'
rm -f sdk_precomp.h.gch
g++ -DHAVE_CONFIG_H  -I/usr/local/lib/wx/include/gtk2-unicode-3.1 -I/usr/local/include/wx-3.1 -D_FILE_OFFSET_BITS=64 -DWXUSINGDLL -D__WXGTK__ -pthread -I../../src/include -I../../src/include -I../../src/sdk/wxscintilla/include -I../../src/include/scripting/sqplus -I../../src/include/mozilla_chardet -I../../src/include/mozilla_chardet/mfbt -I../../src/include/mozilla_chardet/nsprpub/pr/include -I../../src/include/mozilla_chardet/xpcom -I../../src/include/mozilla_chardet/xpcom/base -I../../src/include/mozilla_chardet/xpcom/glue -DCB_AUTOCONF  -DCB_PRECOMP -DPIC -I../../src/include/tinyxml -DTIXML_USE_STL=YES  -O2 -ffast-math  -Winvalid-pch -fPIC -fexceptions -std=c++11 -Winvalid-pch -fPIC -fexceptions -o sdk_precomp.h.gch -xc++-header ./sdk_precomp.h
In file included from ./sdk_common.h:144:0,
                 from ./sdk_precomp.h:13:
./toolsmanager.h:46:32: error: 'ToolsList::Node' has not been declared
   void DoRemoveTool(ToolsList::Node* node);
                                ^~~~
Makefile:1005: recipe for target 'sdk_precomp.h.gch' failed
make[2]: *** [sdk_precomp.h.gch] Error 1
make[2]: Leaving directory '/home/tomay/devel/CodeBlocks/trunk/src/include'
Makefile:543: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/tomay/devel/CodeBlocks/trunk/src'
Makefile:676: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1


is it possible to compile C::B with wxWidgets STL enabled? if so, gime the ./configure command line.

Thank you.

oBFusCATed

No, it is not possible. At least it is not possible to compile wxSmith.
I think I've fixed all other problems.
What version are you trying to compile?
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

tomay3000


oBFusCATed

#3
The wx-stl and wx-non-stl provide different apis. We use the non-stl apis in quite a lot places.
Once I've tried to track and fix most of the places which use these apis.
And I think I've made all non-contrib code to compile, but I might be remembering wrongly.

This is not an often tested combination. If you're not interested in fixing those problems I suggest using wx-non-stl.

edit: It seems that I've not pushed the fixes in trunk...
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

tomay3000

Quote from: oBFusCATed on July 18, 2018, 09:42:30 PM
The wx-stl and wx-non-stl provide different apis. We use the non-stl apis in quite a lot places.
Once I've tried to track and fix most of the places which use these apis.
And I think I've made all non-contrib code to compile, but I might be remembering wrongly.

This is not an often tested combination. If you're not interested in fixing those problems I suggest using wx-non-stl.

edit: It seems that I've not pushed the fixes in trunk...

OK I will recompile wx with no stl then.
thank you.