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