News:

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

Main Menu

The 01 November 2007 build will NOT be out.

Started by killerbot, November 01, 2007, 06:07:22 PM

Previous topic - Next topic

killerbot

tomorrow, when we switch to GCC 4.2.1 build with wx286 ...

kelo81

cool! (what GCC model will you use for the compilation? sjlj or dw2 ? )
Ezequiel Ruiz
Tango/04 consultant
www.tango04.com

killerbot


Mc.Michael


stahta01

Quote from: Mc.Michael on November 01, 2007, 10:10:43 PM
dw2 or sjlj . In what a difference?

If you mean what is the difference?
The dw2 works better with the debugger, since it is what, or closely related, Linux uses.
Windows standard is sjlj. In some cases, sjlj is better on windows; if you need to have exceptions from standard sjlj DLLs passing to your code is one case where sjlj better.

If you are not using windows DLLs, most people consider dw2 the clear winner.

Note, the above is what I have read; I have no direct experience on which is better.

Tim S
C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]

Ceniza

Well, from what I read (and if I really really recall correctly) dw2 has a higher performance than sjlj when no exceptions occur, but it's slower for stack unwinding. I think it's OK if it's a bit slower when an exception is thrown. After all, exceptions don't occur that often in regular code, but code that could throw exceptions is constantly being called. Just to give you an example, consider std::string. Since it does dynamic allocation, it uses the new operator which must throw an exception if not enough memory can be acquired (unless an implementation decided to use the nothrow version of it, or malloc, or something else). In most cases your program will run without problems, even if it does a lot of string manipulation. From my personal experience, I was writing a parser some months ago, and I was using std::string (yes, I'm continuing the example). Profiling that code shown that somewhere between 20% and 25% of the time was spent (or if you prefer "wasted") in sjlj stuff that was never used. I wish I had had the opportunity to test the same code using dw2, but I didn't have the compiler to do that neither I knew about dw2.

Oh, and just before you ask: the current CodeCompletion plugin uses wxString, which uses malloc. If you feel it's running faster, I'd bet it's just a "placebo effect".

Grom

Would be grate to get an installable package of C::B with gcc 4.2.1 with omp support and wx. I am working with PhD students, who have no experience of digging of an operational system. Thanks to God they can write something in C++... And I have to spend too march time with them :x.
gcc+winXP+suse.

Jan van den Borst

LS,
Is there already some explanation on how to set up the new GCC4.2.1 compiler to work with codeblocks? (which packages sould be installed ...)

Jan

killerbot

just the same ones as GCC3.4.5, but then their lastest counterparts, and next all exe's in the bin should be removed from their -dw2 postfix

Jan van den Borst


killerbot

the only issue I am still trying to resolve at this moment, I can't debug with MinGW4.2.1 and GDB (tried GDB 6.3 and 6.6). Dunno what i am doing wrong ...

RJP Computing

Quote from: Jan van den Borst on November 02, 2007, 12:58:02 PM
LS,
Is there already some explanation on how to set up the new GCC4.2.1 compiler to work with codeblocks? (which packages sould be installed ...)

Jan
I made an installer that is available here (Look at the bottom of the page). It is nothing more than a bare minimum setup. Meaning I don't set any environment variables so you can have both systems (4.x.x and 3.x.x) on your computer at once. Plus the debugger works. ;-)
- Ryan

Ubuntu/WinXP, AMD Athlon 64 3000+, 1000MB RAM, AC 97 Audio, ATI Radeon 9600XT 256MB

Jan van den Borst

Quote from: RJP Computing on November 02, 2007, 07:43:10 PM
Quote from: Jan van den Borst on November 02, 2007, 12:58:02 PM
LS,
Is there already some explanation on how to set up the new GCC4.2.1 compiler to work with codeblocks? (which packages sould be installed ...)

Jan
I made an installer that is available here (Look at the bottom of the page). It is nothing more than a bare minimum setup. Meaning I don't set any environment variables so you can have both systems (4.x.x and 3.x.x) on your computer at once. Plus the debugger works. ;-)

This is great

killerbot

Quote from: killerbot on November 02, 2007, 05:32:21 PM
the only issue I am still trying to resolve at this moment, I can't debug with MinGW4.2.1 and GDB (tried GDB 6.3 and 6.6). Dunno what i am doing wrong ...

The thing is in my long running virtual machine, it works [that means a CB that still detects (or had detected) GCC the old way] but with the new virtual machine, it fails. Not able to debug, as well as CB is not able to determine the version of GCC, which shows in 2 ways, the build script to get rid of the dozen warnings of wx fails [it receives an empty version string] and the CB code generates the -I- option where in case of gcc 4.x it should generate -iquote.

Well maybe tomorrow after a fresh reboot, it might work, who knows. Otherwise a detailed compare of default.conf might reveal something ...

stahta01

#14
Quote from: killerbot on November 03, 2007, 12:11:01 AM
CB code generates the -I- option where in case of gcc 4.x it should generate -iquote.

I am getting this on my real windows XP machine. When using MinGW GCC, but TDM build works right.

I think the version info format is the issue.

gcc version 4.2.2 (TDM-1)
gcc version 4.2.1-sjlj (mingw32-2)

Tim S
C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]