/[eiffelstudio]/trunk/Delivery/newdocs/general/guided_tour/studio/index-19.html
ViewVC logotype

Contents of /trunk/Delivery/newdocs/general/guided_tour/studio/index-19.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 33853 - (show annotations)
Wed Aug 21 00:11:50 2002 UTC (17 years, 6 months ago) by neilc
File MIME type: text/html
File size: 8458 byte(s)
Updated to reflect addition of argument dialog to EStudio version 5.2.

1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"><HTML>
2 <HEAD>
3 <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
4 <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
5 <META NAME="GENERATOR" CONTENT="Microsoft FrontPage 4.0">
6 <LINK REL="STYLESHEET" HREF="tour.css" CHARSET="ISO-8859-1" TYPE="text/css">
7 <TITLE> 18 EXECUTING A SYSTEM WITHIN AND WITHOUT EIFFELSTUDIO</TITLE>
8 </HEAD>
9 <body bgcolor="#faf0e6">
10 <DIV>
11 <p class="top" align="center"><a href="http://www.eiffel.com">Eiffel Home Page (Web)</a> -- <a href="../index.html">Getting started with Eiffel (local)</a>
12
13 <img src="power.gif" ALT="Eiffel Home Page" align="right" border="0" usemap="#eiffel" width="109" height="226"><map name="eiffel"><area shape="RECT" alt="Eiffel Home Page" coords="0,0,109,226" HREF="http://www.eiffel.com"><area shape="default" nohref></map>
14
15 <p class="top" ALIGN="left"><IMG SRC="normaldoc.gif" ALT="Previous, Up, Next" BORDER="0" WIDTH="300" HEIGHT="40" USEMAP="#navigation"><map name="navigation"><AREA SHAPE="RECT" alt="Previous section" COORDS="0,0,95,40" HREF="index-18.html"><AREA SHAPE="RECT" alt="Up" COORDS="96,0,199,40" HREF="index.html"><AREA SHAPE="RECT" alt="Next section" COORDS="200,0,300,40" HREF="index-20.html"><area shape="default" nohref></MAP>
16 </DIV>
17 <H1 CLASS="aa-sec2">
18 <A NAME="pgfId-527948"></A>18 EXECUTING A SYSTEM WITHIN AND WITHOUT EIFFELSTUDIO</H1>
19 <P CLASS="nn-first">
20 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="tour-help.html">Help reading this manual</a>
21 <P CLASS="nn-first">
22 <A NAME="pgfId-522610"></A>To complete this study of the compilation process let's see a few more properties of how you can <SPAN CLASS="ff-italics">
23 execute </SPAN>
24 an Eiffel system, both in EiffelStudio and as a compiled system that you deliver to its users, who may need to run it without EiffelStudio.
25 <DIV>
26 <H2 CLASS="aa-sec3">
27 <A NAME="pgfId-522598"></A>Arguments</H2>
28 <P CLASS="nn-first">
29 <A NAME="pgfId-522599"></A>Our example system is very simple and has no need for execution arguments. In more advanced cases you may want to pass values to the execution, such as a numeric parameter or a file name, so that you can have different executions without changing and recompiling the software.
30 <P CLASS="nn-normal">
31 <A NAME="pgfId-522600"></A>In the Eiffel text, you can access such run-time arguments through the Kernel Library class <SPAN CLASS="ee-text">
32 ARGUMENTS</SPAN>
33 . There is another technique -- using the arguments to the root creation procedure -- but using <SPAN CLASS="ee-text">
34 ARGUMENTS</SPAN>
35 is the most general way. Any class of your system can inherit from <SPAN CLASS="ee-text">
36 ARGUMENTS</SPAN>
37 and use queries <SPAN CLASS="ee-text">
38 argument_count</SPAN>
39 to know the number of arguments passed to the execution, and <SPAN CLASS="ee-text">
40 argument</SPAN>
41 <SPAN CLASS="ee-keyword">
42 </SPAN>
43 <SPAN CLASS="ee-comment">
44 (</SPAN>
45 <SPAN CLASS="ee-text">
46 i</SPAN>
47 <SPAN CLASS="ee-comment">
48 )</SPAN>
49 , for <SPAN CLASS="ee-text">
50 i</SPAN>
51 <SPAN CLASS="ee-keyword">
52 </SPAN>
53 between 1 and <SPAN CLASS="ee-text">
54 argument_count</SPAN>
55 to access the <SPAN CLASS="ee-text">
56 i</SPAN>
57 -th element. Class <SPAN CLASS="ee-text">
58 ARGUMENTS</SPAN>
59 has more features; since you have EiffelStudio up, you can check the details if you wish (use the contract form).<P CLASS="nn-normal">
60 <A NAME="pgfId-522601"></A>There are 2 ways to specify execution arguments from within
61 EiffelStudio. The first is through the&nbsp; <SPAN CLASS="ee-keyword">Project </SPAN>
62 <SPAN CLASS="ee-symbol">
63 --&gt; </SPAN>
64 <SPAN CLASS="ee-keyword">
65 Debug/Settings </SPAN>
66 <SPAN CLASS="ee-symbol">
67 --&gt;</SPAN>
68 <SPAN CLASS="ee-keyword">Program Execution&nbsp;</SPAN> tab.&nbsp; The second is
69 through the argument dialog which can be opened by right-clicking on any of the
70 debugging or program execution buttons on the main toolbar.&nbsp; The latter is
71 more convenient for quick and easy access to execution arguments.
72 </DIV>
73 <DIV>
74 <H2 CLASS="aa-sec3">
75 <A NAME="pgfId-527878"></A>Executing from EiffelStudio</H2>
76 <P CLASS="nn-first">
77 <A NAME="pgfId-527879"></A>We have seen how to execute a compiled system from within EiffelStudio: choose one of the appropriate execution buttons, with or without breakpoints.
78 </DIV>
79 <DIV>
80 <H2 CLASS="aa-sec3">
81 <A NAME="pgfId-527882"></A>Executing a finalized system outside of EiffelStudio</H2>
82 <P CLASS="nn-first">
83 <A NAME="pgfId-527883"></A>A finalized system can be executed on any computer of the appropriate platform; it doesn't need EiffelStudio. The executable version is in the directory
84 <p><ul><table width="79%">
85 <TR>
86 <TD ROWSPAN="1" COLSPAN="1">
87 <P CLASS="mm-celltext">
88 <A NAME="pgfId-527887"></A><SPAN CLASS="ee-text">
89 project_directory</SPAN>
90 <SPAN CLASS="ee-keyword">
91 /EIFGEN/F_code</SPAN>
92
93 </TD>
94 </TR>
95 </table></ul><p>
96 <P CLASS="nn-first">
97 <A NAME="pgfId-556367"></A>where <SPAN CLASS="ee-text">
98 project_directory</SPAN>
99 is the project's directory. The name of the executable file is <SPAN CLASS="ee-text">
100 system_name</SPAN>
101 <SPAN CLASS="ee-keyword">
102 .exe</SPAN>
103 , where <SPAN CLASS="ee-text">
104 system_name</SPAN>
105 is the name that you have assigned to your system in the project settings (reflected in the Ace file).
106 <P CLASS="nn-normal">
107 <A NAME="pgfId-556379"></A>The name of our Guided Tour system is <SPAN CLASS="ee-text">
108 simple</SPAN>
109 , so you can locate <SPAN CLASS="ee-text">
110 simple</SPAN>
111 <SPAN CLASS="ee-dot">
112 .</SPAN>
113 <SPAN CLASS="ee-keyword">
114 exe</SPAN>
115 in <SPAN CLASS="ee-keyword">
116 EIFGEN/F_code</SPAN>
117 for your project, and run it stand-alone if you like.
118 <P CLASS="nn-first">
119 <A NAME="pgfId-527898"></A>If you run the system from a command line, and it requires arguments (<SPAN CLASS="ee-text">
120 simple</SPAN>
121 doesn't), you will provide the appropriate arguments after the command name:
122 <p><ul><table width="79%">
123 <TR>
124 <TD ROWSPAN="1" COLSPAN="1">
125 <P CLASS="mm-celltext">
126 <A NAME="pgfId-527906"></A><SPAN CLASS="ee-text">
127 system_name</SPAN>
128 <SPAN CLASS="ee-dot">
129 .</SPAN>
130 <SPAN CLASS="ee-keyword">
131 exe</SPAN>
132 <SPAN CLASS="ee-text">
133 </SPAN>
134 <SPAN CLASS="ff-bold">
135 &#8230; </SPAN>
136 <SPAN CLASS="ee-text">
137 arg </SPAN>
138 <SPAN CLASS="ff-bold">
139 &#8230;</SPAN>
140 <SPAN CLASS="ee-text">
141 .</SPAN>
142
143 </TD>
144 </TR>
145 </table></ul><p>
146 <P CLASS="nn-first">
147 <A NAME="pgfId-527910"></A>Because various platforms have different conventions, &quot;relative paths&quot; referenced in your system will mean something different under Unix/Linux, where they relate to the directory from which the command is launched, and under Windows, where they relate to the application's directory.
148 </DIV>
149 <DIV>
150 <H2 CLASS="aa-sec3">
151 <A NAME="pgfId-527919"></A>Executing a frozen or melted system outside of EiffelStudio</H2>
152 <P CLASS="nn-first">
153 <A NAME="pgfId-527920"></A>A system compiled in &quot;Workbench mode&quot; -- frozen or melted -- is normally meant for execution within EiffelStudio, not for outside delivery, since it is not optimized. If you need to execute it outside of EiffelStudio, make sure that you have access to the <SPAN CLASS="ee-text">
154 system_name</SPAN>
155 <SPAN CLASS="ee-dot">
156 .</SPAN>
157 <SPAN CLASS="ee-keyword">
158 melted</SPAN>
159 file in <SPAN CLASS="ee-text">
160 project_directory</SPAN>
161 <SPAN CLASS="ee-keyword">
162 /EIFGEN/W_code</SPAN>
163 .
164 </DIV>
165 <DIV>
166 <H2 CLASS="aa-sec3">
167 <A NAME="pgfId-556406"></A>Moving on</H2>
168 <P CLASS="nn-first">
169 <A NAME="pgfId-556403"></A>With this discussion of compilation and execution we have finished our review of the key capabilities of EiffelStudio. Not everything has been covered, but you are now familiar with the essentials and ready to discover the rest by yourself, both by trying out various capabilities -- most of which should be self-explanatory -- and examining the extensive online documentation that accompanies the product.
170 </DIV>
171 <p class="bottom" ALIGN="left"><IMG SRC="normaldoc.gif" ALT="Previous, Up, Next" BORDER="0" WIDTH="300" HEIGHT="40" USEMAP="#navigation"><map name="navigation"><AREA SHAPE="RECT" alt="Previous section" COORDS="0,0,95,40" HREF="index-18.html"><AREA SHAPE="RECT" alt="Up" COORDS="96,0,199,40" HREF="index.html"><AREA SHAPE="RECT" alt="Next section" COORDS="200,0,300,40" HREF="index-20.html"><area shape="default" nohref></MAP>
172
173 <p class="bottom" align="center"><a href="http://www.eiffel.com">Eiffel Home Page (Web)</a> -- <a href="../index.html">Getting started with Eiffel (local)</a>
174
175 <p class="copyright" align="center">Copyright Interactive Software Engineering, 2001
176 </BODY>
177 </HTML>

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.23