Re: need help compiling EMC



Paul wrote:

> Hi Jon
>
> If a fatal compiler error occurs, the rest of the Makefile is not run. The
> realtime and non-realtime Makefiles are usually called by a shell script, so
> even if the non-rt fails, the rt side is attempted. Log the output from the
> compile (I use ./compile 2>&1 | tee err.log), and see what leads up to the
> fatal error(s).

There is no error message in the compile log.  At least, I have searched
through it with more and grep with suitable patterns, and found no sign
of an error message.  Yes, it looks like something might have returned
a negative return code and killed the make at that level, but I can't find
any reason for it to happen.  It has happened repeatably, so it was not a
one-time
quirk.

> As far as the problem with loading your module is concerned, I suspect you
> are attempting to reference a pointer before it as initialized. Judicious use
> of rtl_printf will help unless you want to get involved in setting up kdbg.
> The ksymoops utility (found in the kernel-utils package) may also help in
> locating the source of the error.

Ugh!  Thanks, but I was hoping for something more specific, like at least
figuring out what module the fault happened in.  I assume there is some way
to get a load map so you can figure out what offset each routine is in, in
the installable module.  And, I assume somewhere in that block of information
from insmod, there is a record of the program counter.
I put a debug statement in the module that has had the most difficult
modification, ppmc_dio.c, which has to access the struct of structs
EMCMOT_STRUCT, to read and write the aux I/O.  I got this working
in the old version of EMC through awful hacks, and was trying to make
it work in a cleaner fashion with the BDI.  Anyway, my debug statement
never printed in the /var/log/messages file, so I assume it either never
entered that routine, or croaked before the print statement.

Thanks, I'll keep looking.

Jon




Date Index | Thread Index | Back to archive index | Back to Mailing List Page

Problems or questions? Contact