Author Topic: Mantis issue 0027003: False debug running condition prevents shutdown  (Read 1711 times)


  • Administrator
  • Hero Member
  • *
  • Posts: 5567
    • wiki

Thanks for the suggestions. Fedora never aims to be bleeding edge. That can cut both ways. The main advantage is supposed to be that it's all well tested and rock solid. That looks like a myth which is in the process of evaporation.

If these are now unsupported versions I could try bugging them to update what they ship. Could you provide a link that would show 1.0.x is no longer supported by the project?

I'm used to working on Gentoo where you can do pretty much what you want but that freedom has a heavy maintenance overhead. I'm still in the process of setting up this Fedora installation.

The 'can't stop' situation seems to be the same as reported here, also Fed20:,20756.msg120842.html#msg120842 [^]

In fact the whole GDB situation with dwarfs and stabs version breakage etc make this look like a huge time expenditure just to get a debugging environment working.

I recall looking at fpc/laz about 8 years ago and concluding that fpc looked pretty good, but Lazarus had a long way to go. Check back in 5 years....

I'm a little late with 5y, but the first impressions are not too encouraging. Maybe Fedora need a kick up the rear on this.

Is this kind of problem specific to Lazarus/gdb interactions or are there problems using gdb with fpc in any context?

The problems are hard to attribute to a single site. At least it would take considerable work. If GDB has issues with debug info, this could be due to:
- the debug info that fpc generated. (If fpc puts invalid info into either stabs or dwarf
- the flags specified by Lazarus. That is afaik limited to the mixing of stabs/dwarf. And afaik that is legal. Though not necessarily smart.
- a bug in gdb

If  gdb crashes (reports an "internal-error:" / not sure that is the case for you), it is always a bug in gdb (at least if you ask me). It should not matter how broke the debug info is (if indeed it was). GDB should report an error. A crash is a bug.

If that happens, then it may (sometimes) lead to an issue in Lazarus, if the error isn not handled correct. There was lots of improvement. But there can always be some gdb response that is not yet known.

Also according to my observation gdb 7.6 (or even 7.5.9) introduced a lot of crashes, that where not in earlier versions. 7.2 / 7.3 where really good (maybe 7.4,7.5. I do not remember)

But the problems on linux we have no control on the gdb version.

As for the mixed stabs/dwarf: It would be good, if this could be configured more easily. But currently there is no work on it (not as easy as it sound / takes a good deal of time)

In trunk their is work on a gdb free debugger (dwarf only, but ignores stabs without error). Not sure if it is already usable for linux.