mccalpin@perelandra.cms.udel.edu (John D. McCalpin) (03/12/91)
I am having some trouble installing 1.6beta5 on a SPARC. (1) The sh commands in the Makefile under the target 'config' fail the first time through with the message: 'test: too many arguments'. I believe that this is because the config.0 file has the contents MACHINE = not configured and so the argument $$n in the Makefile expands to two words, as in if test SPARC != not configured which gets test upset. I fixed this by running this statement on my SGI machine instead! (2) There is an error in system/compiler/misc/String.?? which is demonstrated in the following log: chester 288% make system --- driver starting on Tue Mar 12 08:17:16 EST 1991 --- driver done on Tue Mar 12 08:17:18 EST 1991 --- compiler starting on Tue Mar 12 08:17:18 EST 1991 ------ builtinOps starting on Tue Mar 12 08:17:20 EST 1991 ------ builtinOps done on Tue Mar 12 08:17:25 EST 1991 ------ builtinTypes starting on Tue Mar 12 08:17:25 EST 1991 ------ builtinTypes done on Tue Mar 12 08:17:30 EST 1991 ------ builtinWord starting on Tue Mar 12 08:17:31 EST 1991 ------ builtinWord done on Tue Mar 12 08:17:34 EST 1991 ------ exprs starting on Tue Mar 12 08:17:35 EST 1991 ------ exprs done on Tue Mar 12 08:17:43 EST 1991 ------ misc starting on Tue Mar 12 08:17:43 EST 1991 .ROOT/system/driver/m3.bootstrap -D../Interfaces -w1 -g -c String.mc "String.m3", line 189: illegal character: '#' "String.m3", line 189: line undefined "String.m3", line 189: syntax error at or near constant 187 *** Error code 1 make: Fatal error: Command failed for target `String.mo' Current working directory /sgi/usr/src/Lang/Modula-3/dist-1.6beta5/system/compil er/misc .ROOT/util/imake: Exit code 1. Stop. *** Error code 1 make: Fatal error: Command failed for target `fromC' Current working directory /sgi/usr/src/Lang/Modula-3/dist-1.6beta5/system/compil er .ROOT/util/imake: Exit code 1. Stop. *** Error code 1 make: Fatal error: Command failed for target `fromC' Current working directory /sgi/usr/src/Lang/Modula-3/dist-1.6beta5/system .ROOT/util/imake: Exit code 1. Stop. *** Error code 1 make: Fatal error: Command failed for target `system' I looked in the appropriate files, and I must admit that I have no idea what is going on! The only thing I can guess is that some parentheses or quoting might be unbalanced, so that it tries to interpret the next #line command in String.mc as part of the text. Any ideas from someone who knows what is going on? P.S. By building a dummy String.mo, I was able to get the rest of the 'system' target to compile -- until the load step, when it needs the String.mo file.... -- John D. McCalpin mccalpin@perelandra.cms.udel.edu Assistant Professor mccalpin@brahms.udel.edu College of Marine Studies, U. Del. J.MCCALPIN/OMNET
muller@src.dec.com (Eric Muller) (03/13/91)
Thanks for your report. > (1) The sh commands in the Makefile under the target 'config' fail the > first time through ... What I have done for 1.6beta6 is to change the target util/config.0 in makefile to echo "not_configured" instead of "not configured". > (2) There is an error in system/compiler/misc/String.?? which is > demonstrated in the following log: > .... The problem is that the String.mc looks like: ... RANGEFAULT ( #line 187 a, b, c) .... and RANGEFAULT is a preprocessor macro. Some cpp do not like the presence of the "#line" in the middle of the macro. I have fixed the compiler. As a fix, you can move "RANGEFAULT (" after the "#line". Eric.