[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [MiNT] __Unwind_Resume
Miro Kropacek wrote:
Be sure you don't use old C++ libraries if you compile your programs
with GCC 4.x.
Everything is compiled from scratch
No.
Because... The "clean" target in zView's Makefile is incomplete.
It doesn't remove pdf/*.o.
As a result, pdf/pdflib.o is distributed in the source archive by error !
Then this file is not rebuilt when you type make.
Finally, I'm right: you are mixing new object files with old ones :P
The obvious solution is to fix the makefile to remove these .o files and
compile them again.
This brings us to a new question.
GCC can be configured to use 2 different and incompatible exception models:
- SJLJ (Setjump/Longjump)
- DW2 (DWARF 2)
I didn't know which method to use when configuring GCC for the first time,
so I chose SJLJ. Also I thought that DW2 was available on ELF only (like
DWARF debug info), but I was probably wrong.
Source objects using SJLJ are tagged with __gxx_personality_sj0.
The ones using DW2 use __gxx_personality_v0.
So it seems that Zorro has configured his cross-compiler with DW2
exceptions, and it works fine for him.
The question is: which exception model is good for us ?
The answer is probably "the same as GCC 2.x", as usual.
I don't know which choice had been made for it.
--
Vincent Rivière