[comp.emacs] Problem bringing up GNU Emacs on sbe20

craig@richp1.UUCP (Craig Peterson Counsultant) (04/20/88)

I'm trying to bring up GNU Emacs on an sbe20 (68020 based SYSVR2 box),
and have been somewhat unsuccessful.  Once temacs is made, and starts running
the message:

	^N^?^?^?|Ho: is not an identifier

comes up, causing substantial grief.  Looking at the dump, here's the
backtrace:

	kill(6,37,0)
	_sigcall(6,37,0)
	_sigcode(37,0,273892)
	_start()   [crt0.c:4]
	free(mem=)   [malloc.c:526]
	getwd(pathname=)   [sysdep.c:1871]
	init_buffer()   [buffer.c:1152]
	main(argc=0,argv=0x7ffe48,envp=0x7ffe4c)   [emacs.c:329]
	start1(argc=0,xargs=)   [crt0.c:15]
	_start()   [crt0.c:5]

Since the pre-crt0 /lib/crt0 combination doesn't work (Termination
code 139?), I've put in a new crt0.c which works fine for another
020 machine I have.  It looks like:

int data_start = 0;
char **environ;
_start()
{
	start1 ();
}
start1 (argc, xargv)
int argc;
char *xargv;
{
	register char **argv = &xargv;
	environ = argv + argc + 1;
	if ((char *)environ == xargv)
		environ--;
	exit(main (argv, argv, environ));
}

Any suggestions???

craig@richp1.UUCP

karl@tut.cis.ohio-state.edu (Karl Kleinpaste) (04/20/88)

craig@richp1.UUCP writes:
   I'm trying to bring up GNU Emacs on an sbe20 (68020 based SYSVR2 box),
   and have been somewhat unsuccessful.  Once temacs is made, and
   starts running the message:
	   ^N^?^?^?|Ho: is not an identifier
   comes up, causing substantial grief.

That looks like an error from shell, not the program itself, which in
turn would suggest that the resulting binary isn't even a valid binary
in the opinion of your kernel.  That's a neat trick if you used your
normal C compiler.

   Since the pre-crt0 /lib/crt0 combination doesn't work (Termination
   code 139?),

Termination code 139 is the exit status noted by make(1) when temacs
ran.  Look up wait(2) and observe that a non-zero low byte means
"death by signal," and that if the 0200 bit is set, you got a core
dump as it went down in flames.  139 decimal is 0213 octal, which is
signal 11, SIGSEGV.

My first, standard, stock suggestion for anyone porting to Yet Another
SysV Port is
	#define NO_REMAP
in the appropriate file (config.h? m-<whatever>.h?) and recompile from
scratch.  That will avoid a whole herd of possibilities, and for those
SysV implementations that do VM in The Proper Manner, it won't cost
your system any grief, either.

--Karl

matt@oddjob.UChicago.EDU (Mr. nEtural) (04/21/88)

) craig@richp1.UUCP writes:
)    Once temacs is made, and starts running the message:
) 	   ^N^?^?^?|Ho: is not an identifier
)    comes up, causing substantial grief.

karl@tut.cis.ohio-state.edu (Karl Kleinpaste) writes:
) That looks like an error from shell, not the program itself, 

To me it suggests corrupted *.elc files in the lisp/ directory.
I think there are instructions for such a case in the INSTALL file.

			Matt