~ubuntu-branches/ubuntu/raring/scilab/raring-proposed

« back to all changes in this revision

Viewing changes to modules/call_scilab/help/en_US/compile_and_run_call_scilab.xml

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2012-08-30 14:42:38 UTC
  • mfrom: (1.4.7)
  • Revision ID: package-import@ubuntu.com-20120830144238-c1y2og7dbm7m9nig
Tags: 5.4.0-beta-3-1~exp1
* New upstream release
* Update the scirenderer dep
* Get ride of libjhdf5-java dependency

Show diffs side-by-side

added added

removed removed

Lines of Context:
11
11
 *
12
12
 -->
13
13
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" version="5.0-subset Scilab" xml:id="compile_and_run_call_scilab" xml:lang="en">
14
 
  <refnamediv>
15
 
    <refname>Compile and run with Call Scilab</refname>
16
 
    <refpurpose>How to compile a native application based on or using
17
 
      Scilab
18
 
    </refpurpose>
19
 
  </refnamediv>
20
 
  <refsection>
21
 
    <title>Compilation</title>
22
 
    <para>To compile a native code based on Call Scilab, it is necessary to
23
 
      define some arguments, variables and paths.
24
 
    </para>
25
 
    <itemizedlist>
26
 
      <listitem>
27
 
        <para>CFLAGS. Call Scilab needs to have access to the headers of
28
 
          Scilab core and call Scilab module.
29
 
        </para>
30
 
        <itemizedlist>
31
 
          <listitem>
32
 
            <para>Linux/Unix/MacOSX:</para>
33
 
            <itemizedlist>
34
 
              <listitem>
35
 
                <para>In the binary version of Scilab, CFLAGS must be set to
36
 
                  /path/to/scilab/include/scilab/core/ and
37
 
                  /path/to/scilab/include/scilab/call_scilab/
38
 
                </para>
39
 
              </listitem>
40
 
              <listitem>
41
 
                <para>In the source tree of Scilab, CFLAGS must be set to
42
 
                  /path/to/scilab/modules/core/includes/ and
43
 
                  /path/to/scilab/modules/call_scilab/includes/
44
 
                </para>
45
 
              </listitem>
46
 
            </itemizedlist>
47
 
          </listitem>
48
 
          <listitem>
49
 
            <para>Windows</para>
50
 
          </listitem>
51
 
        </itemizedlist>
52
 
      </listitem>
53
 
      <listitem>
54
 
        <para>LD_LIBRARY_PATH - Paths to libscilab.so and libjavasci.so (or
55
 
          .dll, .jnilib...)
56
 
        </para>
57
 
        <itemizedlist>
58
 
          <listitem>
59
 
            <para>Linux/Unix/MacOSX:</para>
60
 
            <itemizedlist>
61
 
              <listitem>
62
 
                <para>In the binary version of Scilab, SCI will point to
63
 
                  /path/to/scilab/lib/scilab/
64
 
                </para>
65
 
              </listitem>
66
 
              <listitem>
67
 
                <para>In the source tree of Scilab, SCI will point to the root
68
 
                  of the source tree /path/to/scilab/modules/call_scilab/.libs/
69
 
                  and /path/to/scilab/.libs/
70
 
                </para>
71
 
              </listitem>
72
 
            </itemizedlist>
73
 
          </listitem>
74
 
        </itemizedlist>
75
 
      </listitem>
76
 
      <listitem>
77
 
        <para>LDFLAGS - The name of the library to link against</para>
78
 
        <itemizedlist>
79
 
          <listitem>
80
 
            <para>Linux/Unix/MacOSX: It is only mandatory to link against
81
 
              scilab. This should include the other libraries.
82
 
            </para>
83
 
          </listitem>
84
 
        </itemizedlist>
85
 
      </listitem>
86
 
    </itemizedlist>
87
 
    <para>The following example is a Makefile to build against Scilab binary</para>
88
 
    <programlisting role="example"><![CDATA[ 
 
14
    <refnamediv>
 
15
        <refname>Compile and run with Call Scilab</refname>
 
16
        <refpurpose>How to compile a native application based on or using
 
17
            Scilab
 
18
        </refpurpose>
 
19
    </refnamediv>
 
20
    <refsection>
 
21
        <title>Compilation</title>
 
22
        <para>To compile a native code based on Call Scilab, it is necessary to
 
23
            define some arguments, variables and paths.
 
24
        </para>
 
25
        <itemizedlist>
 
26
            <listitem>
 
27
                <para>CFLAGS. Call Scilab needs to have access to the headers of
 
28
                    Scilab core and call Scilab module.
 
29
                </para>
 
30
                <itemizedlist>
 
31
                    <listitem>
 
32
                        <para>Linux/Unix/MacOSX:</para>
 
33
                        <itemizedlist>
 
34
                            <listitem>
 
35
                                <para>In the binary version of Scilab, CFLAGS must be set to
 
36
                                    /path/to/scilab/include/scilab/core/ and
 
37
                                    /path/to/scilab/include/scilab/call_scilab/
 
38
                                </para>
 
39
                            </listitem>
 
40
                            <listitem>
 
41
                                <para>In the source tree of Scilab, CFLAGS must be set to
 
42
                                    /path/to/scilab/modules/core/includes/ and
 
43
                                    /path/to/scilab/modules/call_scilab/includes/
 
44
                                </para>
 
45
                            </listitem>
 
46
                        </itemizedlist>
 
47
                    </listitem>
 
48
                    <listitem>
 
49
                        <para>Windows</para>
 
50
                    </listitem>
 
51
                </itemizedlist>
 
52
            </listitem>
 
53
            <listitem>
 
54
                <para>LD_LIBRARY_PATH - Paths to libscilab.so and libjavasci.so (or
 
55
                    .dll, .jnilib...)
 
56
                </para>
 
57
                <itemizedlist>
 
58
                    <listitem>
 
59
                        <para>Linux/Unix/MacOSX:</para>
 
60
                        <itemizedlist>
 
61
                            <listitem>
 
62
                                <para>In the binary version of Scilab, SCI will point to
 
63
                                    /path/to/scilab/lib/scilab/
 
64
                                </para>
 
65
                            </listitem>
 
66
                            <listitem>
 
67
                                <para>In the source tree of Scilab, SCI will point to the root
 
68
                                    of the source tree /path/to/scilab/modules/call_scilab/.libs/
 
69
                                    and /path/to/scilab/.libs/
 
70
                                </para>
 
71
                            </listitem>
 
72
                        </itemizedlist>
 
73
                    </listitem>
 
74
                </itemizedlist>
 
75
            </listitem>
 
76
            <listitem>
 
77
                <para>LDFLAGS - The name of the library to link against</para>
 
78
                <itemizedlist>
 
79
                    <listitem>
 
80
                        <para>Linux/Unix/MacOSX: It is only mandatory to link against
 
81
                            scilab. This should include the other libraries.
 
82
                        </para>
 
83
                    </listitem>
 
84
                </itemizedlist>
 
85
            </listitem>
 
86
        </itemizedlist>
 
87
        <para>The following example is a Makefile to build against Scilab binary</para>
 
88
        <programlisting role="example"><![CDATA[ 
89
89
# A sample Makefile building a C code using Call Scilab using Scilab binary
90
90
PATH_SCILAB = /path/to/scilab/ 
91
91
# Note that PATH_SCILAB can be /usr/ is using a packaged version of Scilab.
98
98
        export LD_LIBRARY_PATH=$(PATH_TO_LIB_SCILAB):$(PATH_TO_LIB_CALL_SCILAB)
99
99
        gcc -o myExample $(SCILAB_LDFLAGS) -L$(PATH_TO_LIB_SCILAB) -L$(PATH_TO_LIB_CALL_SCILAB) $(SCILAB_CFLAGS) simple_call_scilab.c
100
100
 ]]></programlisting>
101
 
    <para>The following example is a Makefile to build against Scilab source tree</para>
102
 
    <programlisting role="example"><![CDATA[ 
 
101
        <para>The following example is a Makefile to build against Scilab source tree</para>
 
102
        <programlisting role="example"><![CDATA[ 
103
103
# A sample Makefile building a C code using Call Scilab using Scilab built in it source tree.
104
104
PATH_SCILAB = /path/to/scilab/sources/
105
105
SCILAB_CFLAGS = -I$(PATH_SCILAB)/modules/core/includes/ -I$(PATH_SCILAB)/modules/call_scilab/includes/
111
111
        export LD_LIBRARY_PATH=$(PATH_TO_LIB_SCILAB):$(PATH_TO_LIB_CALL_SCILAB)
112
112
        gcc -o myExample $(SCILAB_LDFLAGS) -L$(PATH_TO_LIB_SCILAB) -L$(PATH_TO_LIB_CALL_SCILAB) $(SCILAB_CFLAGS) simple_call_scilab.c
113
113
 ]]></programlisting>
114
 
  </refsection>
115
 
  <refsection>
116
 
    <title>Running</title>
117
 
    <para>To run an application based on Call Scilab, there are a few other
118
 
      things to set up.
119
 
    </para>
120
 
    <para>Some global variables must me set:</para>
121
 
    <itemizedlist>
122
 
      <listitem>
123
 
        <para>SCI - Path to Scilab files</para>
124
 
        <itemizedlist>
125
 
          <listitem>
126
 
            <para>Linux/Unix/MacOSX:</para>
127
 
            <itemizedlist>
128
 
              <listitem>
129
 
                <para>In the binary version of Scilab, SCI will point to
130
 
                  /path/to/scilab/share/scilab/
131
 
                </para>
132
 
              </listitem>
133
 
              <listitem>
134
 
                <para>In the source tree of Scilab, SCI will point to the root
135
 
                  of the source tree /path/to/scilab/source/tree/
136
 
                </para>
137
 
              </listitem>
138
 
            </itemizedlist>
139
 
          </listitem>
140
 
          <listitem>
141
 
            <para>Windows:</para>
142
 
          </listitem>
143
 
        </itemizedlist>
144
 
      </listitem>
145
 
      <listitem>
146
 
        <para>LD_LIBRARY_PATH - Paths to libscilab.so and libjavasci.so (or
147
 
          .dll, .jnilib...)
148
 
        </para>
149
 
        <itemizedlist>
150
 
          <listitem>
151
 
            <para>Linux/Unix/MacOSX:</para>
152
 
            <itemizedlist>
153
 
              <listitem>
154
 
                <para>In the binary version of Scilab, SCI will point to
155
 
                  /path/to/scilab/lib/scilab/
156
 
                </para>
157
 
              </listitem>
158
 
              <listitem>
159
 
                <para>In the source tree of Scilab, SCI will point to the root
160
 
                  of the source tree /path/to/scilab/modules/javasci/.libs/ and
161
 
                  /path/to/scilab/.libs/
162
 
                </para>
163
 
              </listitem>
164
 
            </itemizedlist>
165
 
          </listitem>
166
 
        </itemizedlist>
167
 
      </listitem>
168
 
      <listitem>
169
 
        <para>LD_LIBRARY_PATH (Java) - Paths to Java native libraries
170
 
          (libjava.so, libjvm.so, libhpi.so)... It is usually provided by the
171
 
          operating system or by Scilab distribution. Please note that won't be
172
 
          necessary in Scilab 5.2
173
 
        </para>
174
 
        <itemizedlist>
175
 
          <listitem>
176
 
            <para>Linux/Unix:</para>
177
 
            <itemizedlist>
178
 
              <listitem>
179
 
                <para>JAVA_HOME/jre/lib/&lt;arch&gt;/,
180
 
                  JAVA_HOME/jre/lib/&lt;arch&gt;/server,
181
 
                  JAVA_HOME/jre/lib/&lt;arch&gt;/native_threads/ (&lt;arch&gt;
182
 
                  can be i386, etc...)
183
 
                </para>
184
 
              </listitem>
185
 
            </itemizedlist>
186
 
          </listitem>
187
 
          <listitem>
188
 
            <para>Mac OS X:</para>
189
 
          </listitem>
190
 
          <listitem>
191
 
            <para>Windows</para>
192
 
          </listitem>
193
 
        </itemizedlist>
194
 
      </listitem>
195
 
    </itemizedlist>
196
 
    <para>Note that two environnement variables are taken in account for
197
 
      specific needs:
198
 
    </para>
199
 
    <itemizedlist>
200
 
      <listitem>
201
 
        <para>
202
 
          <literal>SCI_DISABLE_TK=1</literal> Disables Tk (Tcl's
203
 
          GUI)
204
 
        </para>
205
 
      </listitem>
206
 
      <listitem>
207
 
        <para>
208
 
          <literal>SCI_JAVA_ENABLE_HEADLESS=1</literal> Launch Java in
209
 
          headless mode (no AWT/Swing)
210
 
        </para>
211
 
      </listitem>
212
 
    </itemizedlist>
213
 
  </refsection>
214
 
  <refsection>
215
 
    <title>Examples</title>
216
 
    <programlisting role="example"><![CDATA[ 
 
114
    </refsection>
 
115
    <refsection>
 
116
        <title>Running</title>
 
117
        <para>To run an application based on Call Scilab, there are a few other
 
118
            things to set up.
 
119
        </para>
 
120
        <para>Some global variables must me set:</para>
 
121
        <itemizedlist>
 
122
            <listitem>
 
123
                <para>SCI - Path to Scilab files</para>
 
124
                <itemizedlist>
 
125
                    <listitem>
 
126
                        <para>Linux/Unix/MacOSX:</para>
 
127
                        <itemizedlist>
 
128
                            <listitem>
 
129
                                <para>In the binary version of Scilab, SCI will point to
 
130
                                    /path/to/scilab/share/scilab/
 
131
                                </para>
 
132
                            </listitem>
 
133
                            <listitem>
 
134
                                <para>In the source tree of Scilab, SCI will point to the root
 
135
                                    of the source tree /path/to/scilab/source/tree/
 
136
                                </para>
 
137
                            </listitem>
 
138
                        </itemizedlist>
 
139
                    </listitem>
 
140
                    <listitem>
 
141
                        <para>Windows:</para>
 
142
                    </listitem>
 
143
                </itemizedlist>
 
144
            </listitem>
 
145
            <listitem>
 
146
                <para>LD_LIBRARY_PATH - Paths to libscilab.so and libjavasci.so (or
 
147
                    .dll, .jnilib...)
 
148
                </para>
 
149
                <itemizedlist>
 
150
                    <listitem>
 
151
                        <para>Linux/Unix/MacOSX:</para>
 
152
                        <itemizedlist>
 
153
                            <listitem>
 
154
                                <para>In the binary version of Scilab, SCI will point to
 
155
                                    /path/to/scilab/lib/scilab/
 
156
                                </para>
 
157
                            </listitem>
 
158
                            <listitem>
 
159
                                <para>In the source tree of Scilab, SCI will point to the root
 
160
                                    of the source tree /path/to/scilab/modules/javasci/.libs/ and
 
161
                                    /path/to/scilab/.libs/
 
162
                                </para>
 
163
                            </listitem>
 
164
                        </itemizedlist>
 
165
                    </listitem>
 
166
                </itemizedlist>
 
167
            </listitem>
 
168
            <listitem>
 
169
                <para>LD_LIBRARY_PATH (Java) - Paths to Java native libraries
 
170
                    (libjava.so, libjvm.so, libhpi.so)... It is usually provided by the
 
171
                    operating system or by Scilab distribution. Please note that won't be
 
172
                    necessary in Scilab 5.2
 
173
                </para>
 
174
                <itemizedlist>
 
175
                    <listitem>
 
176
                        <para>Linux/Unix:</para>
 
177
                        <itemizedlist>
 
178
                            <listitem>
 
179
                                <para>JAVA_HOME/jre/lib/&lt;arch&gt;/,
 
180
                                    JAVA_HOME/jre/lib/&lt;arch&gt;/server,
 
181
                                    JAVA_HOME/jre/lib/&lt;arch&gt;/native_threads/ (&lt;arch&gt;
 
182
                                    can be i386, etc...)
 
183
                                </para>
 
184
                            </listitem>
 
185
                        </itemizedlist>
 
186
                    </listitem>
 
187
                    <listitem>
 
188
                        <para>Mac OS X:</para>
 
189
                    </listitem>
 
190
                    <listitem>
 
191
                        <para>Windows</para>
 
192
                    </listitem>
 
193
                </itemizedlist>
 
194
            </listitem>
 
195
        </itemizedlist>
 
196
        <para>Note that two environnement variables are taken in account for
 
197
            specific needs:
 
198
        </para>
 
199
        <itemizedlist>
 
200
            <listitem>
 
201
                <para>
 
202
                    <literal>SCI_DISABLE_TK=1</literal> Disables Tk (Tcl's
 
203
                    GUI)
 
204
                </para>
 
205
            </listitem>
 
206
            <listitem>
 
207
                <para>
 
208
                    <literal>SCI_JAVA_ENABLE_HEADLESS=1</literal> Launch Java in
 
209
                    headless mode (no AWT/Swing)
 
210
                </para>
 
211
            </listitem>
 
212
        </itemizedlist>
 
213
    </refsection>
 
214
    <refsection>
 
215
        <title>Examples</title>
 
216
        <programlisting role="example"><![CDATA[ 
217
217
# Serie of declarations to execute my binary.
218
218
 
219
219
# With a Scilab source tree:
235
235
 
236
236
  - 42.    42.  
237
237
 ]]></programlisting>
238
 
  </refsection>
239
 
  <refsection role="see also">
240
 
    <title>See Also</title>
241
 
    <simplelist type="inline">
242
 
      <member>
243
 
        <link linkend="api_scilab">api Scilab</link>
244
 
      </member>
245
 
      <member>
246
 
        <link linkend="call_scilab">call_scilab</link>
247
 
      </member>
248
 
      <member>
249
 
        <link linkend="StartScilab">StartScilab</link>
250
 
      </member>
251
 
      <member>
252
 
        <link linkend="SendScilabJob">SendScilabJob</link>
253
 
      </member>
254
 
      <member>
255
 
        <link linkend="SendScilabJobs">SendScilabJobs</link>
256
 
      </member>
257
 
      <member>
258
 
        <link linkend="DoubleManagement_callscilab">Double Management</link>
259
 
      </member>
260
 
      <member>
261
 
        <link linkend="BooleanManagement_callscilab">Boolean Management</link>
262
 
      </member>
263
 
      <member>
264
 
        <link linkend="ComplexManagement_callscilab">Complex Management</link>
265
 
      </member>
266
 
      <member>
267
 
        <link linkend="StringManagement_callscilab">String Management</link>
268
 
      </member>
269
 
    </simplelist>
270
 
  </refsection>
 
238
    </refsection>
 
239
    <refsection role="see also">
 
240
        <title>See Also</title>
 
241
        <simplelist type="inline">
 
242
            <member>
 
243
                <link linkend="api_scilab">api Scilab</link>
 
244
            </member>
 
245
            <member>
 
246
                <link linkend="call_scilab">call_scilab</link>
 
247
            </member>
 
248
            <member>
 
249
                <link linkend="StartScilab">StartScilab</link>
 
250
            </member>
 
251
            <member>
 
252
                <link linkend="SendScilabJob">SendScilabJob</link>
 
253
            </member>
 
254
            <member>
 
255
                <link linkend="SendScilabJobs">SendScilabJobs</link>
 
256
            </member>
 
257
            <member>
 
258
                <link linkend="DoubleManagement_callscilab">Double Management</link>
 
259
            </member>
 
260
            <member>
 
261
                <link linkend="BooleanManagement_callscilab">Boolean Management</link>
 
262
            </member>
 
263
            <member>
 
264
                <link linkend="ComplexManagement_callscilab">Complex Management</link>
 
265
            </member>
 
266
            <member>
 
267
                <link linkend="StringManagement_callscilab">String Management</link>
 
268
            </member>
 
269
        </simplelist>
 
270
    </refsection>
271
271
</refentry>