Author Topic: Build C::B against wx3.02 with gcc 5.2 under Windows  (Read 84417 times)

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Build C::B against wx3.02 with gcc 5.2 under Windows
« on: September 27, 2015, 04:02:20 am »
Since the MinGW-Build GCC 5.2 is the only GCC which support large PCH files(see details in good news about gcc which support large pch), I would give it a try.

I have download the wxWidgets 3.0.2 release, and follow the steps described in wiki: Compiling wxWidgets 3.0.0 to develop Code::Blocks (MSW) - CodeBlocks

It fails in the first step when building wx3.0.2 with the following errors:

Code
...
ranlib ..\..\lib\gcc_dll\libwxscintilla.a
g++ -c -o gcc_mswudll\monodll_dummy.o  -O2 -mthreads  -DHAVE_W32API_H -D__WXMSW__   -DNDEBUG    -D_UNICODE  -I..\..\lib\gcc_dll\mswu -I..\..\include  -W -Wall -DWXBUILDING -I..\..\src\tiff\libtiff -I..\..\src\jpeg -I..\..\src\png -I..\..\src\zlib -I..\..\src\regex -I..\..\src\expat\lib -I..\..\src\stc\scintilla\include -I..\..\src\stc\scintilla\lexlib -I..\..\src\stc\scintilla\src -D__WX__ -DSCI_LEXER -DLINK_LEXERS -DwxUSE_BASE=1 -DWXMAKINGDLL   -Wno-ctor-dtor-privacy  -fno-keep-inline-dllexport -MTgcc_mswudll\monodll_dummy.o -MFgcc_mswudll\monodll_dummy.o.d -MD -MP ../../src/common/dummy.cpp
g++ -c -o gcc_mswudll\monodll_any.o  -O2 -mthreads  -DHAVE_W32API_H -D__WXMSW__   -DNDEBUG    -D_UNICODE  -I..\..\lib\gcc_dll\mswu -I..\..\include  -W -Wall -DWXBUILDING -I..\..\src\tiff\libtiff -I..\..\src\jpeg -I..\..\src\png -I..\..\src\zlib -I..\..\src\regex -I..\..\src\expat\lib -I..\..\src\stc\scintilla\include -I..\..\src\stc\scintilla\lexlib -I..\..\src\stc\scintilla\src -D__WX__ -DSCI_LEXER -DLINK_LEXERS -DwxUSE_BASE=1 -DWXMAKINGDLL   -Wno-ctor-dtor-privacy  -fno-keep-inline-dllexport -MTgcc_mswudll\monodll_any.o -MFgcc_mswudll\monodll_any.o.d -MD -MP ../../src/common/any.cpp
In file included from E:/code/gcc/i686-5.2.0-release-posix-dwarf-rt_v4-rev0/mingw32/i686-w64-mingw32/include/c++/type_traits:35:0,
                 from ..\..\include/wx/strvararg.h:25,
                 from ..\..\include/wx/string.h:46,
                 from ..\..\include/wx/any.h:19,
                 from ../../src/common/any.cpp:18:
E:/code/gcc/i686-5.2.0-release-posix-dwarf-rt_v4-rev0/mingw32/i686-w64-mingw32/include/c++/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
 #error This file requires compiler and library support for the \
  ^
In file included from ..\..\include/wx/string.h:46:0,
                 from ..\..\include/wx/any.h:19,
                 from ../../src/common/any.cpp:18:
..\..\include/wx/strvararg.h:350:18: error: 'is_enum' in namespace 'std' does not name a template type
     typedef std::is_enum<T> is_enum;
                  ^
..\..\include/wx/strvararg.h:354:54: error: 'is_enum' was not declared in this scope
     enum { value = wxFormatStringSpecifierNonPodType<is_enum::value>::value };
                                                      ^
..\..\include/wx/strvararg.h:354:68: error: template argument 1 is invalid
     enum { value = wxFormatStringSpecifierNonPodType<is_enum::value>::value };
                                                                    ^
makefile.gcc:6428: recipe for target 'gcc_mswudll\monodll_any.o' failed
mingw32-make: *** [gcc_mswudll\monodll_any.o] Error 1

Do I need to enable the c++11 command line option? Any one has experience about building wx 3.0.2? Thanks.

BTW: It looks like c++11 option is not suggested, see: Trouble using wxWidgets 3.0.2 library under Mingw 64, instread, they suggest "gnu++11" option.

Thanks.

If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #1 on: September 27, 2015, 07:41:18 am »
It looks like that this issue has discussed in wx user forum, see: https://groups.google.com/d/msg/wx-users/jZNzDXXnjCs/AQB3MB6HogEJ

And the actual fix is in trunk: Don't attempt using <type_traits> with g++ 4.9.2 in C++98 mode. ยท wxWidgets/wxWidgets@4f846f7

So, this patch need to be applied on the wxWidgets 3.0.2 release. :)
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #2 on: September 27, 2015, 07:53:54 am »
The patch file can be generated by adding a ".patch" in the URL, so here is the patch:

https://github.com/wxWidgets/wxWidgets/commit/4f846f72de.patch

EDIT: with this patch, I can successfully build wx 3.0.2 with gcc 5.2 by the method mentioned in wiki: Compiling wxWidgets 3.0.0 to develop Code::Blocks (MSW) - CodeBlocks

Now, I'm going to see if I can build CB against wx 3.0.2 with PCH enabled, see related discussion here: Re: Patches for Compiling Code::Blocks against wxWidgets 3.0 using MinGW GCC 4.8.1
« Last Edit: September 27, 2015, 08:33:37 am by ollydbg »
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #3 on: September 27, 2015, 09:10:55 am »
OK, successfully build CodeBlocks_wx30.cbp with PCH enabled (under gcc 5.2).
I use my patch to build C::B against wx 3.0 with PCH enabled to CodeBlocks_wx30.cbp

Besides that, I have add an compiler option:
Code
-Wno-deprecated-declarations
to avoid a lot of warnings from wx.

Also, I see some warnings from C::B source:

Code
-------------- Build: sdk in Code::Blocks wx3.0.x (compiler: GNU GCC Compiler)---------------

[  0.8%] g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -Wno-deprecated-declarations -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE -Woverloaded-virtual -DEXPORT_LIB -DEXPORT_EVENTS -DWXMAKINGDLL_SCI -iquote.objs30\include -I.objs30\include -I. -ID:\wx3\include -ID:\wx3\lib\gcc_dll\mswu -Isdk\wxscintilla\include -Iinclude\tinyxml -Iinclude -Iinclude\tinyxml -Iinclude\scripting\bindings -Iinclude\scripting\include -Iinclude\scripting\sqplus -Iinclude\mozilla_chardet -Iinclude\mozilla_chardet\mfbt -Iinclude\mozilla_chardet\nsprpub\pr\include -Iinclude\mozilla_chardet\xpcom -Iinclude\mozilla_chardet\xpcom\base -Iinclude\mozilla_chardet\xpcom\glue -c include\sdk_precomp.h -o .objs30\include\sdk_precomp.h.gch
In file included from include\cbauibook.h:13:0,
                 from include\sdk_common.h:133,
                 from include\sdk_precomp.h:13:
D:\wx3\include/wx/aui/auibook.h:349:18: warning: 'virtual bool wxAuiNotebook::AddPage(wxWindow*, const wxString&, bool, int)' was hidden [-Woverloaded-virtual]
     virtual bool AddPage(wxWindow *page, const wxString &text, bool select,
                  ^
In file included from include\sdk_common.h:133:0,
                 from include\sdk_precomp.h:13:
include\cbauibook.h:141:14: warning:   by 'bool cbAuiNotebook::AddPage(wxWindow*, const wxString&, bool, const wxBitmap&)' [-Woverloaded-virtual]
         bool AddPage(wxWindow* page,
              ^
In file included from include\cbauibook.h:13:0,
                 from include\sdk_common.h:133,
                 from include\sdk_precomp.h:13:
D:\wx3\include/wx/aui/auibook.h:352:18: warning: 'virtual bool wxAuiNotebook::InsertPage(size_t, wxWindow*, const wxString&, bool, int)' was hidden [-Woverloaded-virtual]
     virtual bool InsertPage(size_t index, wxWindow *page, const wxString &text,
                  ^
In file included from include\sdk_common.h:133:0,
                 from include\sdk_precomp.h:13:
include\cbauibook.h:156:14: warning:   by 'bool cbAuiNotebook::InsertPage(size_t, wxWindow*, const wxString&, bool, const wxBitmap&)' [-Woverloaded-virtual]
         bool InsertPage(size_t page_idx,
              ^

Maybe, we need to fix our C::B's source :)
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #4 on: September 27, 2015, 09:18:08 am »
After finishing building CodeBlocks_wx30.cbp and running update30.bat, I just start C::B inside C::B.
The first thing I see is a dialog from wx, says
Quote
15:23:36: Resource files must have same version number.
15:23:38: Resource files must have same version number.
I think I have reported some where in this forum, but it is lost...
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #5 on: September 27, 2015, 11:07:22 am »
I see crash when I exits C::B, or I enable or disable several plugins, but I can't catch them, all seems come from the wx core.

Code
[debug]Program received signal SIGSEGV, Segmentation fault.
[debug]0x6474c5e5 in wxWindow::FindItemByHWND(HWND__*, bool) const () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]>>>>>>cb_gdb:

Program received signal SIGSEGV, Segmentation fault.
In wxWindow::FindItemByHWND(HWND__*, bool) const () (D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll)

[debug]> bt 30
[debug]#0  0x6474c5e5 in wxWindow::FindItemByHWND(HWND__*, bool) const () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#1  0x6474dc28 in wxWindow::HandleCtlColor(HBRUSH__**, HDC__*, HWND__*) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#2  0x6475911b in wxWindow::MSWHandleMessage(long*, unsigned int, unsigned int, long) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#3  0x647497a0 in wxWindow::MSWWindowProc(unsigned int, unsigned int, long) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#4  0x64741f96 in wxTopLevelWindowMSW::MSWWindowProc(unsigned int, unsigned int, long) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#5  0x647a8046 in wxFrame::MSWWindowProc(unsigned int, unsigned int, long) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#6  0x64751223 in wxWndProc(HWND__*, unsigned int, unsigned int, long)@16 () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#7  0x7e418734 in USER32!GetDC () from C:\WINDOWS\system32\user32.dll
[debug]#8  0x001d0a82 in ?? ()
[debug]#9  0x00000133 in ?? ()
[debug]#10 0x86011c8a in ?? ()
[debug]#11 0x00140eb6 in ?? ()
[debug]#12 0x647511b0 in wxWindow::SubclassWin(HWND__*) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#13 0x7e418816 in USER32!GetDC () from C:\WINDOWS\system32\user32.dll
[debug]#14 0x647511b0 in wxWindow::SubclassWin(HWND__*) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#15 0x7e42927b in USER32!GetParent () from C:\WINDOWS\system32\user32.dll
[debug]#16 0x00000000 in ?? ()
[debug]>>>>>>cb_gdb:

« Last Edit: November 09, 2015, 02:08:48 am by ollydbg »
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #6 on: September 27, 2015, 02:02:57 pm »
Interesting, I got a crash call stack, which comes from debugger sdk, see:
Code
[debug]> bt 30
[debug]#0  0x6474c5e5 in wxWindow::FindItemByHWND(HWND__*, bool) const () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#1  0x6474dc28 in wxWindow::HandleCtlColor(HBRUSH__**, HDC__*, HWND__*) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#2  0x6475911b in wxWindow::MSWHandleMessage(long*, unsigned int, unsigned int, long) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#3  0x647497a0 in wxWindow::MSWWindowProc(unsigned int, unsigned int, long) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#4  0x64741f96 in wxTopLevelWindowMSW::MSWWindowProc(unsigned int, unsigned int, long) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#5  0x647a8046 in wxFrame::MSWWindowProc(unsigned int, unsigned int, long) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#6  0x64751223 in wxWndProc(HWND__*, unsigned int, unsigned int, long)@16 () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#7  0x7e418734 in USER32!GetDC () from C:\WINDOWS\system32\user32.dll
[debug]#8  0x001401da in ?? ()
[debug]#9  0x00000133 in ?? ()
[debug]#10 0xf3011d42 in ?? ()
[debug]#11 0x00410eea in BreakpointsDlg::OnOpen (this=0xffffffff, event=...) at F:\cb_sf_git\trunk\src\src\breakpointsdlg.cpp:338
[debug]#12 0x7e418816 in USER32!GetDC () from C:\WINDOWS\system32\user32.dll
[debug]#13 0x647511b0 in wxWindow::SubclassWin(HWND__*) () from D:\wx3\lib\gcc_dll\wxmsw30u_gcc_cb.dll
[debug]#14 0x7e42927b in USER32!GetParent () from C:\WINDOWS\system32\user32.dll
[debug]#15 0x00000000 in ?? ()
[debug]>>>>>>cb_gdb:


This happens I try to enable the "open files list" plugin.


EDIT:
Debugged for a while, I found that the crash happens in this line: "m_pTree = new wxTreeCtrl..." in the source file plugins\openfileslist\openfileslistplugin.cpp around line 73.
Code
void OpenFilesListPlugin::OnAttach()
{
    m_ViewMenu = 0;

    m_EditorArray.Clear();

    // create tree
    m_pTree = new wxTreeCtrl(Manager::Get()->GetAppWindow(), idOpenFilesTree,wxDefaultPosition,wxSize(150, 100),
                            wxTR_HAS_BUTTONS | wxNO_BORDER | wxTR_HIDE_ROOT);

    // load bitmaps
    wxBitmap bmp;
    m_pImages = new wxImageList(16, 16);
    wxString prefix = ConfigManager::GetDataFolder() + _T("/images/");

    bmp = cbLoadBitmap(prefix + _T("folder_open.png"), wxBITMAP_TYPE_PNG); // folder
    m_pImages->Add(bmp);

    bmp = cbLoadBitmap(prefix + _T("ascii.png"), wxBITMAP_TYPE_PNG); // file
    m_pImages->Add(bmp);
    ...
Any one has the hint that why create a wxTreeCtrl get crashed?
« Last Edit: September 27, 2015, 02:27:18 pm by ollydbg »
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline stahta01

  • Lives here!
  • ****
  • Posts: 7576
    • My Best Post
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #7 on: September 27, 2015, 02:44:01 pm »
I will start testing this using GCC 5.2 from MSys2 and see if the results matches yours; I have no idea if the PCH bug is fixed in it. So, it will be one of the first things to test.

Edit: Are you doing 32 bit or 64 bit windows builds? I can test either one.

Tim S.

« Last Edit: September 27, 2015, 02:46:29 pm by stahta01 »
C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 64 bit.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #8 on: September 27, 2015, 02:52:33 pm »
Edit: Are you doing 32 bit or 64 bit windows builds? I can test either one.
I'm on an old 32 bit windows XP system. :)
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline stahta01

  • Lives here!
  • ****
  • Posts: 7576
    • My Best Post
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #9 on: September 27, 2015, 03:00:39 pm »
Edit: Are you doing 32 bit or 64 bit windows builds? I can test either one.
I'm on an old 32 bit windows XP system. :)

I will be testing on Windows 7 (32 bit ?Ultra? or 64 bit Home Pro), likely start on 64 bit Home Pro first (Linux is Building something on the dual boot of the other one).

I will be doing it differently from you in the patch on Code::Blocks will NOT set WX_PRECOMP and no patch on wxWidgets if I can help doing that.

Edit:
gcc version 5.2.0 (Rev3, Built by MSYS2 project)
My GCC Compiler has this defined HAVE_TR1_TYPE_TRAITS
My GCC Compiler has this extra option -Wno-deprecated-declarations
My GCC Compiler has this additional path C:\Program Files\Git\cmd 
(I am building from a Git repo; I had a weird Git error till I added this path)


wxWidgets 3.0.2 was built with
CPPFLAGS="-DHAVE_TR1_TYPE_TRAITS"
CXXFLAGS="-fno-keep-inline-dllexport"


Tim S.
« Last Edit: September 27, 2015, 03:43:03 pm by stahta01 »
C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 64 bit.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org

Offline oBFusCATed

  • Developer
  • Lives here!
  • *****
  • Posts: 13413
    • Travis build status
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #10 on: September 27, 2015, 04:03:59 pm »
My guess is that your build is totally broken.
Because this kind of backtrace can happen only if you right or double click in the breakpoints dialog.
So if you're not doing so and you're getting this, then your build is totally broken.
The cause might be mixing old and new dlls, broken compiler, pch problems, etc.

So if I were you I start with deleting everything in .objs30, devel30 and output30.
(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!]

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #11 on: September 27, 2015, 04:14:04 pm »
My guess is that your build is totally broken.
Because this kind of backtrace can happen only if you right or double click in the breakpoints dialog.
So if you're not doing so and you're getting this, then your build is totally broken.
The cause might be mixing old and new dlls, broken compiler, pch problems, etc.

So if I were you I start with deleting everything in .objs30, devel30 and output30.

But I did "deleting everything in .objs30, devel30 and output30." before I build the CodeBlocks_wx30.cbp.  :(
So, I see the build library should be cleaned.

I'm debugging on the crash issue, it happens randomly, some times, when I enable the plugin, it crashes at the call on the line "new wxTreeCtrl(...)", sometimes, it doesn't.

About the backtrace showing on
Code
[debug]#8  0x001401da in ?? ()
[debug]#9  0x00000133 in ?? ()
[debug]#10 0xf3011d42 in ?? ()
[debug]#11 0x00410eea in BreakpointsDlg::OnOpen (this=0xffffffff, event=...)
I think it is a gdb unwind issue, since there are many "?? ()" functions it can't unwinded.



« Last Edit: September 27, 2015, 04:16:17 pm by ollydbg »
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline stahta01

  • Lives here!
  • ****
  • Posts: 7576
    • My Best Post
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #12 on: September 27, 2015, 04:37:14 pm »
CB Projects that I did NOT add PCH back to and the reason why:
    Reason does NOT include sdk.h from inside source file (Header files do NOT count)
        DevPak
        ProjectOptionsManipulator
        Exporter
        Tools Plus Plugin
        wxWidgets - Contrib Items
        wxSmith
    Reason does NOT include sdk.h from inside source file before any other includes
        AutoVersioning
        Code Snippets
        KeyBinder
        SmartIndent
        NassiShneiderman
    Reason does NOT include sdk.h from inside source file (After #pragma implementation do NOT count)
        DragScroll
        KeyBinder
        MouseSap
    Reason includes sdk.h from inside header file.
        FileManager Plugin
    The bad reason did NOT wish to spend the time build wxSmith or wxWidgets - Contrib Items
        wxSmith - wxAUI
        wxSmith - Contrib Item

Tim S.
« Last Edit: September 27, 2015, 04:59:51 pm by stahta01 »
C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 64 bit.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org

Offline ollydbg

  • Developer
  • Lives here!
  • *****
  • Posts: 5906
  • OpenCV and Robotics
    • Chinese OpenCV forum moderator
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #13 on: September 27, 2015, 04:50:33 pm »
@Tim, did you see the crash issue? After building Codeblocks_wx30.cbp(no contributed plugins are needed), when you "disable" or "enable" the "open files list" plugin (all the other plugins are by default enabled), I always see the crash.

BTW: I can start the codeblocks from devel30 folder, but when I try to start codeblocks from output30 folder, I get an error dialog, which says "The application failed to initialize properly(0xc000007b). Click on OK to terminate the application.

I don't use the old configure files, because I use the CbLauncher.exe to launch the codeblocks, also I have totally clean the PATH, because I run CbLauncher.exe inside a bat file(this make the PATH environment clean), such as:
Code
@set PATH=E:\code\common_bin;D:\wx3\lib\gcc_dll;E:\code\gcc\i686-5.2.0-release-posix-dwarf-rt_v4-rev0\mingw32\bin
start cblauncher.exe --debug-log
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

Offline stahta01

  • Lives here!
  • ****
  • Posts: 7576
    • My Best Post
Re: Build C::B against wx3.02 with gcc 5.2 under Windows
« Reply #14 on: September 27, 2015, 07:05:31 pm »
I did NOT see the open files causing an issue when enable and then disable it.

The only plugins that started enabled was compiler and help.

I had to copy these DLLs from the MInGW bin folder to get CB to run from devel30_64 folder.
libgcc_s_seh-1.dll
libwinpthread-1.dll
libstdc++-6.dll


Edit: From output30_64 folder I get the same results.

NOTE: I have no MinGW installations in my system PATH variables because it caused issues in the past to me.

Edit2: Started CB from command prompt with path only set to output30_64 and still no issue
Started the second time this way with all core plugins enabled and some contrib plugs enabled and still no issue with enable and disable Open Files Plugin.
Code
cd C:\SourceCode\OpenSourceCode\Apps\IDEs\CodeBlocks\codeblocks_windows-git\src\output30_64
set path=C:\SourceCode\OpenSourceCode\Apps\IDEs\CodeBlocks\codeblocks_windows-git\src\output30_64
codeblocks


Tim S.
« Last Edit: September 27, 2015, 07:18:46 pm by stahta01 »
C Programmer working to learn more about C++ and Git.
On Windows 7 64 bit and Windows 10 64 bit.
--
When in doubt, read the CB WiKi FAQ. http://wiki.codeblocks.org