Code::Blocks Forums

Developer forums (C::B DEVELOPMENT STRICTLY!) => Development => Topic started by: Borneq on December 10, 2015, 11:05:58 am

Title: How start help develop C::B?
Post by: Borneq on December 10, 2015, 11:05:58 am
I have succeeded compiling C::B sources it from SVN but it need debug it inside Code::Blocks.
How compile C::B inside C::B, both under Linux and Windows? (under Windows will be easier because I have Wnidows 8.1, VirtualBox and Linux Mint inside VirtualBox)
Where are Todo lists and bugzilla?
Title: Re: How start help develop C::B?
Post by: ollydbg on December 10, 2015, 02:38:09 pm
I have succeeded compiling C::B sources it from SVN but it need debug it inside Code::Blocks.
How compile C::B inside C::B, both under Linux and Windows? (under Windows will be easier because I have Wnidows 8.1, VirtualBox and Linux Mint inside VirtualBox)
Where are Todo lists and bugzilla?
I'm grad to see this post, thanks, hope you will enjoy the development. In-fact that's the same question I would ask when I would like to contribute to C::B, that's many years ago.  :)
It is really easy to build C::B inside C::B. For example, under windows, you just need to open the codeblocks.cbp file, and hit the build the button to build, I think the details can be found in this wikipage: Installing Code::Blocks from source on Windows - CodeBlocks (http://wiki.codeblocks.org/index.php/Installing_Code::Blocks_from_source_on_Windows).
Under Linux, this is quite similar. (though I have never don't that under Linux, so other devs may help)

About Todo and bugzilla. All the bug reports are here: Tickets (https://sourceforge.net/p/codeblocks/tickets/?source=navbar), also there are old tickets from old berlios site, see: old bugs (http://alpha0010.github.io/cb-history/bugs.html), old features (http://alpha0010.github.io/cb-history/features.html) and old patches (http://alpha0010.github.io/cb-history/patches.html).

There are a lot of Todos, such as fully migrate to the wx3.0 library, as currently we are still using the wx 2.8.12 library, the gdb-mi plugin... I think you can choose the interesting part of C::B to start the development.

If you see any problems, don't hesitate to ask in our forum here.
Thank you!
Title: Re: How start help develop C::B?
Post by: Borneq on December 10, 2015, 08:46:51 pm
I try compile it under Windows 8.1:
I download and install wx version 2.8.x : wxMSW-2.8.12-Setup.exe to C:\wxWidgets-2.8.12
Build in directory : c:\wxWidgets-2.8.12\build\msw\ mingw32-make.exe -f makefile.gcc
options: SHARED=1 and next SHARED=0, UNICODE=1 BUILD=release
- I must comment in statbox.cpp wxUxThemeEngine::Get()->GetThemeFont because errors
I have get sources from SVN : svn://svn.code.sf.net/p/codeblocks/code/trunk
set global variables:
  cb_release_type = -g
  wx =
    base = c:\wxWidgets-2.8.12
    include = c:\wxWidgets-2.8.12\include
    lib = c:\wxWidgets-2.8.12\lib
(directory CBroot\src\build_tools\autorevision is ignored by git - it is ok?)
- open CodeBlocks.workspace
- is choosed first project Code::Blocks wx2.8.x
- Build
- Changed #include "wx/setup.h" to #include "wx/univ/setup.h"

ERROR: ld.exe : cannot find -lwxmsw28u
there are many libs:
libwxmsw28u_adv.a
libwxmsw28u_aui.a
libwxmsw28u_core.a
...
but not libwxmsw28u.a
I must add all 16 libraries to project?

About Todos:
How is planned migration to wx3.0 library? What is gdb-mi plugin? what difference from present debug plugin?

Best regards!
Title: Re: How start help develop C::B?
Post by: MortenMacFly on December 10, 2015, 08:51:44 pm
Build in directory : c:\wxWidgets-2.8.12\build\msw\ mingw32-make.exe -f makefile.gcc
options: SHARED=1 and next SHARED=0, UNICODE=1 BUILD=release
Would you mind to read exactly what is written on the page ollydbg pointed you to?

Quote
set path=c:\mingw\bin;c:\mingw\mingw32\bin
mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=1  clean
mingw32-make -f makefile.gcc SHARED=1 MONOLITHIC=1 BUILD=release UNICODE=1

Notice that you didn't build the monolithic version, therefore the lib is missing.
Title: Re: How start help develop C::B?
Post by: Borneq on December 11, 2015, 01:43:02 am
I have compiled wxWidgets with MONOLITHIC=1
I using TDM-MinGW package instead MinGW.
I placed zip.exe to directory in PATH
and wait for build...

SUCCESS!
and run new C::B as debug process from base C::B

If I try wxWidgets-3.0.2 :
sdk\wxpropgrid\include\wx\propgrid\propdev.h|18|error: aggregate 'WXDLLIMPEXP_PG_FWD wxArrayEditorDialog' has incomplete type and cannot be defined|

Modular design (plugins) facilitates find interesting code place.
Title: Re: How start help develop C::B?
Post by: stahta01 on December 11, 2015, 02:45:41 am
What I quoted makes no sense; what did you do to result in the error?

The most likely thing you did wrong is to use an Code::Blocks wxWidgets 28 project and try to link against wxWidgets 3.0.

Tim S.

If I try wxWidgets-3.0.2 :
sdk\wxpropgrid\include\wx\propgrid\propdev.h|18|error: aggregate 'WXDLLIMPEXP_PG_FWD wxArrayEditorDialog' has incomplete type and cannot be defined|
Title: Re: How start help develop C::B?
Post by: ollydbg on December 11, 2015, 03:48:22 am
@Borneq, you should use: CodeBlocks_wx30.cbp to build C::B if you want to link against wx 3.0.