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.