Compile EiffelStudio with Automatic Build Scripts
WARNING!
THIS DOCUMENT IS UNDER HEAVY DEVELOPMENT AND CORRESPONDS ONLY TO THE ES-MAKE BRANCH
Contents
Linux-x86
Prerequisites
In this example we use the example directory /home/user/eiffel. That means the binary EiffelStudio would be installed at /home/user/eiffel/Eiffel60 and the trunk at /home/user/eiffel/trunk. This documentation will have these paths as examples, so please replace them if you use different paths.
To compile EiffelStudio, you need an already working EiffelStudio compiler (which comes with the precompiled EiffelStudio installation) on your machine. The current source tree requires at least version 6.0 of EiffelStudio. You can download the precompiled version from http://eiffelsoftware.origo.ethz.ch/downloads/builds/. Read the existing documentation to install EiffelStudio.
To checkout the latest source code from the repository, you need subversion installed.
Also be sure to have the the gtk2.0 development library (for Ubuntu it would be the package libgtk2.0-dev) and the xtst development library (ubuntu: libxtst-dev) installed
Downloading Source Code
Go to the directory where you want to have the EiffelStudio source code (/home/user/eiffel). Now check out the sources from the repository.
cd /home/user/eiffel svn co https://eiffelsoftware.origo.ethz.ch/svn/es/branches/es-make trunk
Setting Environmental Variables
These environmental variables need to be set: ISE_EIFFEL, ISE_PLATFORM (these two should already be set from EiffelStudio installation), ISE_LIBRARY, EIFFEL_SRC, GOBO. As well the binary paths for gobo and EiffelStudio need to be added to the PATH variable.
There are two different ways for doing this: either set it temporary for this session (don't restart the terminal) or set it permanently in your .bashrc
- Temporary
(don't restart the terminal during the compilation, all variables will be lost!)
export EIFFEL_SRC= home/user/eiffel/trunk/Src export ISE_EIFFEL= home/user/eiffel/Eiffel60 export ISE_PLATFORM=linux-x86 export ISE_LIBRARY=${EIFFEL_SRC} export PATH=${PATH}:${ISE_EIFFEL}/studio/spec/${ISE_PLATFORM}/bin:${EIFFEL_SRC}/library/gobo/bin
- Permanent
edit your /home/user/.bashrc and add these lines:
ISE_EIFFEL="/home/user/eiffel/Eiffel60" ISE_PLATFORM="linux-x86" EIFFEL_SRC="/home/user/eiffel/trunk/Src" ISE_LIBRARY="${EIFFEL_SRC}" PATH=${PATH}:${ISE_EIFFEL}/studio/spec/${ISE_PLATFORM}/bin:${EIFFEL_SRC}/library/gobo/svn/bin GOBO="/home/user/eiffel/trunk/Src/library/gobo/svn export ISE_EIFFEL ISE_PLATFORM EIFFEL_SRC ISE_LIBRARY PATH GOBO
IMPORTANT: You need to restart the terminal for the changes to take effect
Compiling and Installing Gobo tools
The Gobo tools source code is already included in the SVN checkout of the Eiffel source. But we still need to bootstrap it. For further information about the different valid compiler please read the Readme.txt in the bootstrap directory or execute the bootstrap script with any arguments
cd $GOBO/work/bootstrap sh bootstrap.sh gcc ise
Compiling EiffelStudio
Now go to trunk/Src and run the check_setup script
cd $EIFFEL_SRC make check_setup
If all tests were successful, it says „Setup check complete. Your configuration seems ok!“ Now you can start compiling.Otherwise check the error messages and fix the problems.
cd $EIFFEL_SRC make build_dev
GOOD LUCK!
Windows
Prerequisites
In this example we use the example directory C:\Programme\EiffelSoftware\. That means the binary EiffelStudio would be installed at C:\Programme\EiffelSoftware\Eiffel60 and the trunk at C:\Programme\EiffelSoftware\trunk. This documentation will have these paths as examples, so please replace them if you use different paths.
At first you need a C compiler on your system. We recommend to install Microsoft Visual Studio .NET as it has all included and is easy to install. Instead you can install the Microsoft SDK from http://download.microsoft.com/download/a/7/7/a7767f09-0136-4a96-a1f8-276bf0ee31fa/Setup.exe
To compile EiffelStudio, you need an already working EiffelStudio compiler (which comes with the precompiled EiffelStudio installation) on your machine. The current source tree requires at least version 6.0 of EiffelStudio. You can download the precompiled version from http://eiffelsoftware.origo.ethz.ch/downloads/builds/. Read the existing documentation to install EiffelStudio.
To checkout the latest source code from the repository, you need a subversion client installed (for example TortoiseSVN).
As the compilation needs a working bash on the system you need to install cygwin. It is important that you choose Unix/binary as Default Text File Type during the installation and select a bash version 3.1-6 (in the package selection screen --> Shells /bash, click on version number to change)
Downloading Source Code
Go to the directory where you want to have the EiffelStudio source code (C:\Programme\EiffelSoftware\). Now check out the sources from the repository.
right-click in the folder, choose SVN Checkout URL of repository: https://eiffelsoftware.origo.ethz.ch/svn/es/branches/es-make Checkout directory: C:\Programme\EiffelSoftware\trunk
possibly you need to kill TSVNcache.exe ... memory leak
Setting Environmental Variables
These environmental variables need to be set: ISE_EIFFEL, ISE_PLATFORM (these two should already be set from EiffelStudio installation), ISE_LIBRARY, EIFFEL_SRC, ISE_C_COMPILER, GOBO. As well the binary-paths for gobo and EiffelStudio need to be added to the PATH variable.
Goto Systemsteuerung, open the 'System' Dialogue, in 'erweitert' you can click on 'Umgebungsvariabeln' In the upper Box enter each of the new environmental variables by clicking new:
name value
ISE_C_COMPILER msc EIFFEL_SRC C:\Programme\EiffelSoftware\trunk\Src ISE_EIFFEL C:\Programme\EiffelSoftware\Eiffel60 ISE_PLATFORM windows-msc-x86 GOBO C:\Programme\EiffelSoftware\trunk\Src\library\gobo\svn