ftp.nice.ch/pub/next/developer/languages/eiffel/SmallEiffel.0.91.N.bs.tar.gz#/SmallEiffel

DISCLAIMER
 
GNU_LICENSE
 
README.NeXT
 
READ_ME
 
bin/
 
bin_c/
 
lib_show/
 
lib_std/
 
lib_test/
 
man/
 
misc/
 

README.NeXT

Compiling SmallEiffel v0.91 under NeXTstep 3.3:
===============================================

First of all it is a good idea to read the INSTALL file which resides under the
"misc" directory! After this read/do the following to compile SmallEiffel under
NeXTstep:



-1-) SmallEiffel itself and it's *.make files in the "bin_c" directory are 
     preconfigured for 'gcc' as the default C compiler and I haven't changed 
	  that behaviour in this SmallEiffel v0.91 release.
	  
	  So if you only have NeXT's 'cc' (which BTW is based also on gcc) you have
	  two choices to set thinks up for compilation for the right C compiler.

	  
	  [1] The easiest (and prefered/recommended) solution to handle this is:
	  
	             su               (to get root)
	             cd /bin          (change into the /bin directory)
					 ln -s cc gcc     (make a link gcc -> cc)
					 
			this way your NeXTstep cc compiler can also be accessed as gcc.
			Beside the elegance for lazy people, this solution has the advantage
			that you don't need to change anything and you have now a handy
			version of gcc too. 


	  [2] The harder (not recommended) solution to handle this is:
	  
	   a. Change to the "bin_c" directory and change in the *.make files					 
			all occurrences of 'gcc' to 'cc'.
			
		b. Now open file 'compile_to_c43.c' and go to line number 1165 which
		   reads  "ms502_44=e2s("gcc");"  and replace this line by the following
			
                   #ifdef NeXT
                       ms502_44=e2s("cc");
                   #else
                       ms502_44=e2s("gcc");
                   #endif /* NeXT */

		   thats a way to replace SmallEiffel's internal usage of gcc to cc!
			
			However, you can leave out the previous substep (b.) and use instead
			the '-cc cc' flag when using SmallEiffel's 'compile' or 'compile_to_c'
			commands.  Thus you can force  SmallEiffel via a command-flag to use
			cc instead of gcc for it's compilation.
	 


-2-) One problem under NS is still the file 'compile_to_c43.c' in "bin_c",
     this generates an:

	      "cc: Internal compiler error: program cc1obj got fatal signal 11"

     if compiled with the optimizition flag '-O2'. We have to compile this one
     without optimization. So compile it this way:
     ^^^^^^^^^^^^^^^^^^^^
	                    "cc -c compile_to_c43.c"
     
     I have changed this in the compile_to_c.make file, so you don't have to
	  bother about this.
     
-3-) Add the '.../SmallEiffel/bin' path into your shells "set path=" path 
     variable and add an environment entry for "SmallEiffel" into your 
	  '.tcshrc' or '.cshrc' or whatever shell you use.
	  
	  Here is an EXAMPLE for the tcsh ('.tcshrc'):
	  
	  #
     # this file gets executed by every shell you start
     #

     # make sure the path is correct
	  set path=(. ~/Unix/bin /usr/local/bin /usr/ucb /bin /usr/bin 
	  /usr/sybase/bin ~/Apps /LocalApps /NextApps /NextAdmin 
	  /NextDeveloper/Demos /usr/local/SmallEiffel/bin )
	  ...
	  ...
	  # Setup environment+path for the SmallEiffel Compiler
	   setenv SmallEiffel /usr/local/SmallEiffel

	  Now the only things left to do now is, to start one of the following
     scripts under the "misc" directory:

	                  INSTALL.CSH   or   INSTALL.SH

     These start the compilation of SmallEiffel. After the compilations
	  completed, SmallEiffel is ready for usage!

-4-) THATS IT


Good luck with SmallEiffel and keep in mind that this free Eiffel compiler
is still in evolution.
 
    Valentino Kyriakides
--

-vkyr (Valentino Kyriakides)
1kyriaki@informatik.uni-hamburg.de

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.