Difference between revisions of "User:Pvrohr"

(Compiling EiffelStudio on WinXP:)
(Updated to the new path of Delivery in Src.)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
== Compiling EiffelStudio on WinXP: ==
 
== Compiling EiffelStudio on WinXP: ==
This section summarizes the so far rather painful process of compiling EiffelStudio. The platform for which the following description applies is MS Windows XP SP2 using the [http://download.microsoft.com/download/a/5/f/a5f0d781-e201-4ab6-8c6a-9bb4efed1e1a/PSDK-x86.exe MSDN PSDK-x86.exe] and the free MS C-compiler. The system was set up according to the description which can be found at: [[http://eiffelsoftware.origo.ethz.ch/index.php/Windows_32-bit_C_compiler]].
+
This section summarizes the so far rather painful process of compiling EiffelStudio. The platform for which the following description applies is MS Windows XP SP2 using the [http://download.microsoft.com/download/a/5/f/a5f0d781-e201-4ab6-8c6a-9bb4efed1e1a/PSDK-x86.exe MSDN PSDK-x86.exe] and the free MS C-compiler. The system was set up according to the description which can be found at: [[Installing_Microsoft_C_compiler]].
  
 
The compilation process follows the basic steps described at:  
 
The compilation process follows the basic steps described at:  
[[http://eiffelsoftware.origo.ethz.ch/index.php/Compiling_EiffelStudio]].
+
[[Compiling_EiffelStudio]].
  
  
 
=== Milestones ===
 
=== Milestones ===
 
==== M1 June 12, 2006 ====
 
==== M1 June 12, 2006 ====
Installed the new release 5.7.59395 announced at [[http://origo.ethz.ch/pipermail/es-devel/2006-June/000305.html]]
+
Installed the new release 5.7.59395 announced on the [http://origo.ethz.ch/pipermail/es-devel/2006-June/000305.html mialing list]
  
Modified the automatic build scripts[[http://eiffelsoftware.origo.ethz.ch/index.php/Automatic_Build_Scripts]].
+
Modified the automatic build scripts [[Automatic_Build_Scripts]].
  
 
This led to a version of EiffelStudio that was able to create new basic projects. For some mysterious reasons the debugger worked also for simple projects, but nobody else could replicate this. Hence, it is not clear whether this debugger version was running correctly.
 
This led to a version of EiffelStudio that was able to create new basic projects. For some mysterious reasons the debugger worked also for simple projects, but nobody else could replicate this. Hence, it is not clear whether this debugger version was running correctly.
  
 
==== M2 June 16, 2006 ====
 
==== M2 June 16, 2006 ====
Installed new release 5.7.59623 because it was recommended on es-devel and the previous version began to choke on current checkouts.
+
'''Step -1''': Installed new release 5.7.59623 because it was recommended on es-devel and the previous version began to choke on current checkouts.
 +
 
 +
'''Step 0''': Setting the environment variables:
 +
 
 +
<pre>
 +
rem ******
 +
rem Cygwin
 +
rem ======
 +
set PATH=%PATH%;C:\cygwin\bin
 +
 
 +
rem ************
 +
rem EiffelStudio
 +
rem ============
 +
rem General Eiffel path
 +
set EIFFEL_PATH=%CD%
 +
rem Eiffel source directory
 +
set EIFFEL_SRC=%EIFFEL_PATH%\57dev
 +
rem Eiffel delivery directory
 +
set EIFFEL_DELIVERY=%EIFFEL_PATH%\57comp
 +
 
 +
rem *********
 +
rem ISE Paths
 +
rem =========
 +
set ISE_EIFFEL=C:\Programme\Eiffel57\59623
 +
set ISE_PLATFORM=windows
 +
set ISE_C_COMPILER=msc
 +
set ISE_LIBRARY=%EIFFEL_SRC%
 +
 
 +
rem **********
 +
rem Subversion
 +
rem ==========
 +
rem SVN checkout URL
 +
set SVNURL=https://eiffelsoftware.origo.ethz.ch/svn/es
 +
</pre>
 +
 
 +
'''Step 1''': svn checkout
 +
<pre>
 +
svn co %SVNURL%/branches/soft-arch/Src 57dev
 +
svn co %SVNURL%/branches/soft-arch/free_add_ons 57dev/free_add_ons
 +
 
 +
rem the following update is also extended by revision number
 +
cd 57dev
 +
svn up
 +
svn up free_add_ons
 +
</pre>
 +
 
 +
'''Step 2''': gobo extraction
 +
<pre>
 +
cd %EIFFEL_SRC%\library
 +
 
 +
set file_cygwin=/cygdrive/%EIFFEL_SRC::=%/free_add_ons/gobo/gobo_34_win.tgz
 +
set file_cygwin=%file_cygwin:\=/%
 +
 
 +
bash -c "tar -xvzf %file_cygwin%"
 +
</pre>
 +
 
 +
'''Step 3''': Compile Run-Time
 +
<pre>
 +
cd %EIFFEL_SRC%/C
 +
call configure win32 m
 +
</pre>
 +
 
 +
'''Step 4''': Compile Libraries
 +
<pre>
 +
cd %EIFFEL_SRC%/library/net/Clib
 +
svn up %REVNRSTR%
 +
call make_msc.bat
 +
 
 +
cd %EIFFEL_SRC%/library/vision2/Clib
 +
svn up %REVNRSTR%
 +
call make_msc.bat
 +
 
 +
cd %EIFFEL_SRC%/library/wel/Clib
 +
svn up %REVNRSTR%
 +
call make_msc.bat
 +
</pre>
 +
 
 +
'''Step 5''': Compile C-Libraries
 +
<pre>
 +
cd %EIFFEL_SRC%/C_library/zlib
 +
call make_msc.bat
 +
 
 +
cd %EIFFEL_SRC%/C_library/libpng
 +
call make_msc.bat
 +
</pre>
 +
 
 +
'''Step 6''': Compile Compiler
 +
<pre>
 +
cd %EIFFEL_SRC%/Eiffel/library/cli_writer/Clib
 +
nmake
 +
</pre>
 +
 
 +
'''Step 7''': Compile EiffelStudio
 +
<pre>
 +
cd %EIFFEL_SRC%\Eiffel\Ace
 +
"%ISE_EIFFEL%\studio\spec\windows\bin\ec.exe" -config ec.ecf -target bench -c_compile
 +
 
 +
echo Running finish_freezing.exe...
 +
cd "%EIFFEL_SRC%\Eiffel\Ace\EIFGENs\bench\W_code"
 +
"%ISE_EIFFEL%\studio\spec\windows\bin\finish_freezing.exe"
 +
</pre>
 +
 
 +
'''Conclusion''': Unfortunately doing the above on Revision 59860 produces a version that cannot create new base projects.
 +
 
 +
==== M3 June 21, 2006 ====
 +
Recompiling Revision 59930 did not solve the above problem, but this version should be sufficient for the whole project.
 +
 
 +
I uploaded all the compile scripts that I used somewhere on my [[http://n.ethz.ch/student/pvrohr/Courses/S4/SA/project/scripts/ website]]. As Volkan correctly mentioned, they are not tested. All I can say is that they worked for me, and I am not giving any warranty for whatsoever. If you still want to try them, unzip them into a new directory. Then all you have to do is change the path to ISE_EIFFEL in 0_set_env_vars.bat. And the rest will all happen in the current directory. If you have problems, please let me know.
 +
 
 +
I also added a feature switch button to the new class wizzard in eb_create_class_dialog.e. The button is not yet connected to the feature wizzard. The changed class file is available [[http://n.ethz.ch/student/pvrohr/Courses/S4/SA/project/classes/eb_create_class_dialog.e here]]. I also put up the svn [[http://n.ethz.ch/student/pvrohr/Courses/S4/SA/project/classes/eb_create_class_dialog.diff diff]] output compared to the original version.

Latest revision as of 15:26, 27 January 2012

Compiling EiffelStudio on WinXP:

This section summarizes the so far rather painful process of compiling EiffelStudio. The platform for which the following description applies is MS Windows XP SP2 using the MSDN PSDK-x86.exe and the free MS C-compiler. The system was set up according to the description which can be found at: Installing_Microsoft_C_compiler.

The compilation process follows the basic steps described at: Compiling_EiffelStudio.


Milestones

M1 June 12, 2006

Installed the new release 5.7.59395 announced on the mialing list

Modified the automatic build scripts Automatic_Build_Scripts.

This led to a version of EiffelStudio that was able to create new basic projects. For some mysterious reasons the debugger worked also for simple projects, but nobody else could replicate this. Hence, it is not clear whether this debugger version was running correctly.

M2 June 16, 2006

Step -1: Installed new release 5.7.59623 because it was recommended on es-devel and the previous version began to choke on current checkouts.

Step 0: Setting the environment variables:

rem ******
rem Cygwin
rem ======
set PATH=%PATH%;C:\cygwin\bin

rem ************
rem EiffelStudio
rem ============
rem General Eiffel path
set EIFFEL_PATH=%CD%
rem Eiffel source directory
set EIFFEL_SRC=%EIFFEL_PATH%\57dev
rem Eiffel delivery directory
set EIFFEL_DELIVERY=%EIFFEL_PATH%\57comp

rem *********
rem ISE Paths
rem =========
set ISE_EIFFEL=C:\Programme\Eiffel57\59623
set ISE_PLATFORM=windows
set ISE_C_COMPILER=msc
set ISE_LIBRARY=%EIFFEL_SRC%

rem **********
rem Subversion
rem ==========
rem SVN checkout URL
set SVNURL=https://eiffelsoftware.origo.ethz.ch/svn/es

Step 1: svn checkout

svn co %SVNURL%/branches/soft-arch/Src 57dev
svn co %SVNURL%/branches/soft-arch/free_add_ons 57dev/free_add_ons

rem the following update is also extended by revision number
cd 57dev
svn up 
svn up free_add_ons

Step 2: gobo extraction

cd %EIFFEL_SRC%\library

set file_cygwin=/cygdrive/%EIFFEL_SRC::=%/free_add_ons/gobo/gobo_34_win.tgz
set file_cygwin=%file_cygwin:\=/%

bash -c "tar -xvzf %file_cygwin%"

Step 3: Compile Run-Time

cd %EIFFEL_SRC%/C
call configure win32 m

Step 4: Compile Libraries

cd %EIFFEL_SRC%/library/net/Clib
svn up %REVNRSTR%
call make_msc.bat

cd %EIFFEL_SRC%/library/vision2/Clib
svn up %REVNRSTR%
call make_msc.bat

cd %EIFFEL_SRC%/library/wel/Clib
svn up %REVNRSTR%
call make_msc.bat

Step 5: Compile C-Libraries

cd %EIFFEL_SRC%/C_library/zlib
call make_msc.bat

cd %EIFFEL_SRC%/C_library/libpng
call make_msc.bat

Step 6: Compile Compiler

cd %EIFFEL_SRC%/Eiffel/library/cli_writer/Clib
nmake

Step 7: Compile EiffelStudio

cd %EIFFEL_SRC%\Eiffel\Ace
"%ISE_EIFFEL%\studio\spec\windows\bin\ec.exe" -config ec.ecf -target bench -c_compile

echo Running finish_freezing.exe...
cd "%EIFFEL_SRC%\Eiffel\Ace\EIFGENs\bench\W_code"
"%ISE_EIFFEL%\studio\spec\windows\bin\finish_freezing.exe"

Conclusion: Unfortunately doing the above on Revision 59860 produces a version that cannot create new base projects.

M3 June 21, 2006

Recompiling Revision 59930 did not solve the above problem, but this version should be sufficient for the whole project.

I uploaded all the compile scripts that I used somewhere on my [website]. As Volkan correctly mentioned, they are not tested. All I can say is that they worked for me, and I am not giving any warranty for whatsoever. If you still want to try them, unzip them into a new directory. Then all you have to do is change the path to ISE_EIFFEL in 0_set_env_vars.bat. And the rest will all happen in the current directory. If you have problems, please let me know.

I also added a feature switch button to the new class wizzard in eb_create_class_dialog.e. The button is not yet connected to the feature wizzard. The changed class file is available [here]. I also put up the svn [diff] output compared to the original version.