From: G DOT DegliEsposti AT ads DOT it To: djgpp AT delorie DOT com Message-ID: Date: Mon, 12 Jan 1998 09:37:38 +0100 Subject: Re: Make thingy and Floating point err Mime-Version: 1.0 Content-type: text/plain; charset=us-ascii Precedence: bulk >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