News:

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

Main Menu

[OT updated 2010-10-18] Loaden's MinGW GCC 4.4.5 released!

Started by ollydbg, March 10, 2010, 07:20:20 AM

Previous topic - Next topic

ollydbg

2010-10-18
Loadens MinGW 4.4.5 released
containing:
Gcc 4.4.5 compiler suite (corss build from linux)
GDB 20101012 cvs snapshot with python support (with python binaries redistributed)
Other packages from the official MinGW.

It can be download from: mingw-static-4.4.5-all.7z

2010-06-04
Upldated: Loadens MinGW 4.4.4-3 released.
More details can be found in
MinGW-QP 4.4.4 static build (fix -finput-charset bug)

By the way, the full package
mingw-static-all-4.4.4-3.7z
Contains the MinGW gdb 7.1.5 build by ollydbg. see
[OT] ollydbg's unoffcial MinGW GDB 7.1.50-20100521 released

2010-03-12
After the hard working of 15days, Loaden has released a MinGW GCC&G++ 4.4.3 version in qp-gcc - Project Hosting on Google Code

Here is a details about this release.

What's the disadvantages of the offical MinGW 4.4.0
1. gdb can't reach the breakpoints in the header files when debugging under CB due to a bug in GCC.
2. debugging cross models like if you want to debug DLLs, you need to "disable" the "catch C++ exception options" in CB, otherwise your gdb debugger will exit abnormally.
What's the advantages of the offical MinGW 4.4.0
1. A lot of fixes in STL libraries.
2. Better handling of dw-2 exceptions.
3. Better handling of Windows SEH exceptions.

What's the advantage of TDM GCC 4.4.1
1. it fixes the bug when breakpoint can't be reached in header files.
2. catch exceptions functionality can be debugged safely cross models, and you don't need to Disable "catch c++ exception" in CB.
3. support large file handing.
4. added feature:-std=c++0x option, also, fix build error when macro __STRICT_ANSI__ defined.
5. added feature: stack is extended to 32MB
6. all other fixes...

What's the disadvantages of MinGW TDM 4.4.1
1. It doesn't have the official MinGW patches included.
2, the official GCC is now 4.4.3, and TDM MinGW GCC is still 4.4.1.

Also: both the TDM MinGW GCC and the official MinGW is build under cygwin or native Windows.
Loaden's MinGW GCC&G++ release was corss-built from Linux.

What's the advantages of Loaden's MinGW GCC 4.4.3
It integrates all the patches from offcial mingw and TDM GCC 4.4.1. So, we have both the advantages from these previous MinGW releases, and the disadvantages of the Loaden's GCC release were minimized.

What's the advantages of Loaden's MinGW GCC 4.4.3
We have do a lot of testing before our release, these testing include building and debugging wxWidgets2.8.10, Qt4.6.2, Code::Blocks. But we don't guarantee this release is "bug free", so, we welcome the user to report any bugs.

Download packages
You can either download a "full MinGW packages" or only the "GCC&G++ package".
A full version
which includes:
Loaden's GCC&G++ 4.4.3 release
binutils-2.20.1-2
gdb-7.0.50
make-3.81
mingwrt-3.18,
w32api- 3.14,
pthreads2.8,
iconv_1.13.1
can be downloaded from mingw32-4.4.3-4-all.7z
Manual installation
If you would like to manually install, you can only download the Loaden's GCC&G++ packages here:
gcc_g++-4.4.3-4.7z
Then, you need to download other packages from the MinGw offcial site, these include:
   * binutils
   * mingw-runtime (devand dll)
   * w32api
   * Required runtime libraries (pthreads)
   * mingw-gdb for debugger
   * mingw32-make for make

Just extract these package to the same folder.

Development issue


All the patches used in Loaden's MinGW GCC 4.4.3  can be downloaded from: patches_src-4.4.3-4.7z

The build instructions can be found in the wikipage Build Steps
And a Chinese version of the build steps can be found in Cross build of MinGW QP 4.4.3 by Loaden
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.

blueshake

QuoteThe build instructions can be found in the qp-gcc - Project Hosting on Google Code

Seems need a English version for this. :D
Keep low and hear the sadness of little dog.
I fall in love with a girl,but I don't dare to tell her.What should I do?

MortenMacFly

Quote from: blueshake on March 10, 2010, 07:43:59 AM
Seems need a English version for this. :D
True. I don't think its going to be accepted otherwise.
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]

ollydbg

Quote from: MortenMacFly on March 10, 2010, 07:55:27 AM
Quote from: blueshake on March 10, 2010, 07:43:59 AM
Seems need a English version for this. :D
True. I don't think its going to be accepted otherwise.
Ok, I will translate the Chinese build docs to English version as soon as possible.
By the way, All the build work was done by Loaden, I just tested the release for several days.
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.

nanyu

I like it! thank you! I have a problem.

Do I have to rebuild all libs(such as wx, xerces-c, ...) with the Loaden's gcc?  Those lib have been build by offical ming.


MortenMacFly

Quote from: ollydbg on March 10, 2010, 08:00:13 AM
By the way, All the build work was done by Loaden, I just tested the release for several days.
Some questions that would be nice to know:
- Does it compile wxWidgets?
- Does it compile things like boost?
- Does it compile Code::Blocks?
- Does it allow debugging into wxWidgets apps (like Code::Blocks, wx v2.8.10)?
- Does it allow debugging into wxWidgets versions >= 2.9.x apps?
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: [url="https://www.codeblocks.org/docs/main_codeblocks_en.html"]https://www.codeblocks.org/docs/main_codeblocks_en.html[/url]
C::B FAQ: [url="https://wiki.codeblocks.org/index.php?title=FAQ"]https://wiki.codeblocks.org/index.php?title=FAQ[/url]

blueshake

Keep low and hear the sadness of little dog.
I fall in love with a girl,but I don't dare to tell her.What should I do?

Loaden

Quote from: nanyu on March 10, 2010, 08:26:43 AM
I like it! thank you! I have a problem.

Do I have to rebuild all libs(such as wx, xerces-c, ...) with the Loaden's gcc?  Those lib have been build by offical ming.


You only need to recompile your project!

Loaden

Quote from: MortenMacFly on March 10, 2010, 08:31:52 AM
Quote from: ollydbg on March 10, 2010, 08:00:13 AM
By the way, All the build work was done by Loaden, I just tested the release for several days.
Some questions that would be nice to know:
- Does it compile wxWidgets?
- Does it compile things like boost?
- Does it compile Code::Blocks?
- Does it allow debugging into wxWidgets apps (like Code::Blocks, wx v2.8.10)?
- Does it allow debugging into wxWidgets versions >= 2.9.x apps?
Yes, ollydbg test it. it's can be debug well.

ollydbg

Quote from: MortenMacFly on March 10, 2010, 08:31:52 AM
Quote from: ollydbg on March 10, 2010, 08:00:13 AM
By the way, All the build work was done by Loaden, I just tested the release for several days.
Some questions that would be nice to know:
- Does it compile wxWidgets?
yes
Quote- Does it compile things like boost?
not tried yet
Quote
- Does it compile Code::Blocks?
yes
Quote- Does it allow debugging into wxWidgets apps (like Code::Blocks, wx v2.8.10)?
yes, I can debug both exe and dll, cc plugin...
Quote- Does it allow debugging into wxWidgets versions >= 2.9.x apps?
not tried yet
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.

Loaden

#10
I built boost 1.4.2, wx2.9-snapshot in this afternoon, and seems ok. :)

ollydbg

#11
I have translate the Chinese version to English, see below, I'm sorry If I have some errors, please correct me.

Edit 20100312 by ollydbg
Build step instructions were moved to the Build wikipage.
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.

Loaden

Thanks for ollydbg! :D

I build boost 1.4.2:
bjam --build-type=complete threading=multi --libdir=".\lib" --toolset=gcc-4.4.3 stage
and build Qt 4.6.2:
configure -prefix D:\DengYC\LoveDEV\qt -debug-and-release -platform win32-g++ -shared -fast -opensource -no-qt3support -no-zlib -no-openssl -no-webkit -no-style-plastique -no-style-cleanlooks -no-style-motif -no-style-cde -nomake examples -nomake demos -nomake translations

nanyu

Quote from: Loaden on March 10, 2010, 08:40:09 AM
Quote from: nanyu on March 10, 2010, 08:26:43 AM
I like it! thank you! I have a problem.

Do I have to rebuild all libs(such as wx, xerces-c, ...) with the Loaden's gcc?  Those lib have been build by offical ming.


You only need to recompile your project!

That is say : they have the compatible ABI ?

Loaden