Boston Linux & Unix (BLU) Home | Calendar | Mail Lists | List Archives | Desktop SIG | Hardware Hacking SIG
Wiki | Flickr | PicasaWeb | Video | Maps & Directions | Installfests | Keysignings
Linux Cafe | Meeting Notes | Blog | Linux Links | Bling | About BLU

BLU Discuss list archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

The "what were they thinking" department

I finally bit the bullet a month or so ago, and upgraded everything to 
Mandrake 9.1.  There are lots of improvements in the applications, and it has 
current drivers for all the new stuff that we're buying at the office.

But the compiler has gone through a major version change for me (gcc 2.95 --> 
3.2.2), as so has the GUI toolkit we use, so there's been some minor porting
to do. 

Much to my dismay, I've discovered that with the new compiler, one can't 
always set a breakpoint with the debugger properly.  It turns out that 
gcc 3.x will sometimes generate two copies of the code for a C++ constructor 
(sort of the initialization routine for a class).  See

and view problem report #1193

To my much further dismay, I've discovered this has been a problem for almost 
2 years!!  

The gdb folks list this as a known problem:

The gcc people don't seem to think that this is much of a problem.  Read 
comment #3 in

But this isn't the only problem with the new compiler.  Because of a change in 
the debug information, and a failure on the part of the gcc authors to 
eliminate redundant information, the size of my executables with debug 
information have increased by a factor of 6!!  A 5mb executable becomes 30mb
(I have several, mostly the user interace modules). This makes it next to
impossible to transmit an update over a modem line.

In fairness to the GCC folks, it also looks like C++ has becomre much more 
complicated in recent years.  ANSI has been at work, making "improvements".


BLU is a member of BostonUserGroups
BLU is a member of BostonUserGroups
We also thank MIT for the use of their facilities.

Valid HTML 4.01! Valid CSS!

Boston Linux & Unix /