Mail Archives: djgpp/1998/01/12/03:39:49
>I downloaded djgpp just a few days ago, so am fairly new at it. I have a
welcome!
>bunch of files that I made with Microsoft C++, and when compiled, they
>worked fine under that. But when I got them compiled under djgpp and tried
>to run it, I got some sort of floating point exception, and signal SIGFPE.
>This is the readout I got from symify...
[...]
Call frame traceback EIPs:
0x000034f1 _CalcNormal__7Panel3D+677
[...]
if you compile your files with the -g switch then symify will also give the
exact line number within the file where the error occurred.
>It is a big 3D library, and my guess was that it had something to do with
>the floating point calculations ( I think in Panel3D::CalcNormal(), but I
According to the traceback... it seems so.
>am not sure.) So, if anyone can help me, it would be greatly appreciated.
Compile with -g or check the arguments you give to math functions. Maybe
MSC++ does not complain if you write sqrt(-1) while DJGPP gives a FPE...
In this cases I use wrapper functions like:
double my_sqrt(double x)
{
if (x < 0) emit_error(...);
else return sqrt(x);
}
>Also, when I run make, it says something like
>(makefile:4) : *** seperator missing
>
>that may not sound weird, but line 4 is:
> cc -c test.exe $(objects)
be sure that before the 'cc' there is a TAB and not spaces.
I am not sure but... are you sure it is '-c' and not '-o' ?
>and if I put a : in, then it only compiles the first .o file in the var
>objects. I ended up doing the whole thing, line by line.
where did you put the ':' ? Maybe the problem is in line 3. It should look
more or less like this:
test.exe: $(ojects)
without the tab at the beginnning and with a space or a tab after ':'
>Well, if anyone has an answer to either of those questions, it would
really
>help.
>
>Thanks in advance,
I hope I helped a bit.
ciao
Giacomo
- Raw text -