1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6 <meta http-equiv="Content-Style-Type" content="text/css" />
7 <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />
8 <link rel="stylesheet" href="./runtime.css" type="text/css" />
9 <title>SILC Runtime Toolkit</title>
14 <table border="0" cellspacing="0" cellpadding="6" width="100%">
16 <td>Copyright © 2001 - 2008 SILC Project<br />
17 <a href="http://silcnet.org">SILC Project Website</a></td>
19 <a href="index.html">SILC Runtime Toolkit Manual</a><br />
20 <a href="masterindex.html">Index</a></small></td>
26 <div id="contentwrapper">
28 </div> <!-- navigation -->
31 <big><b>Building the Toolkit</b></big>
34 SILC Runtime Toolkit works on various platforms, such as on several Unix
35 systems and on Windows. Building of the Toolkit on some platform may
36 differ from the other. This document describes how to build the Toolkit
37 from the sources, to create linkable libraries and binaries, on all
38 platforms the Toolkit support.
41 The building instructions for all platforms are also included in the Toolkit
42 package. Please refer to the INSTALL file for general building instructions
43 for Unix systems, README.WIN32 for building on Windows systems,
44 README.MACOSX for building on Mac OS X, and README_SYMBIAN for building on
48 <ul class="toc_entries">
49 <li><a href="#unix">Building on Unix & Linux</a><br />
50 <li><a href="#windows">Building on Windows</a><br />
51 <li><a href="#macosx">Building on Mac OS X</a>
52 <li><a href="#symbian">Building on Symbian OS</a>
55 <b><a name="unix"></a>Building on Unix & Linux</b>
58 On Unix systems both statically and dynamically linkable libraries are
62 To build Toolkit on Unix systems, give commands:
71 On some systems you may need to give "gmake" command instead of "make". The
72 ./configure can take several options as arguments. To see them all give
76 <tt>./configure --help</tt>
79 The most important configuration options you may consider to use are:
82 <tt>--enable-debug</tt>
85 If you would like to enable the debugging for the compiled binaries
86 you can give this option to the `configure'. It is recommended to use
87 this option when you are doing development with Toolkit. It is helpful
88 to enable run-time debugging.
91 <tt>--with-iconv[=DIR]</tt>
94 If your system doesn't provide iconv() function in its native libraries
95 (usually libc) or if this function is broken (e.g. older Solaris systems),
96 you may want to use libiconv instead. The DIR is the upper path in your
97 system which contains lib/ and include/ for libiconv (e.g. /usr/local).
100 <tt>--without-pthreads</tt>
103 If you do not want to compile the programs with POSIX multi-threads support
104 you can give --without-pthreads option. This will disable the SILC Thread
105 API and SILC Mutex API. Furthermore if SILC Thread API is used when this
106 option is used, the routines work, but do not work in threads (are run
107 in the calling process and can block the process).
110 <tt>--disable-asm</tt>
113 If you have trouble compiling the assembler optimized code in the
114 package or does not want to use them, you can give the --disable-asm
115 option to the `configure' script. This will assure that assembler
116 optimized code is not compiled in.
119 <tt>--enable-ipv6</tt>
122 The `configure' will attempt to check for IPv6 support in your system.
123 However, if it fails, but you still want to compile in the IPv6 support
124 you can give --enable-ipv6 option to force the IPv6 support.
127 <tt>--disable-cpu-optimizations</tt>
130 By default the configure script will attempt to detect the type of your
131 CPU and enable any features specific to your CPU that could optimize the
132 performance of the Toolkit. If you are creating binary package that
133 should work on any CPU (and not only your CPU) you should diable these
134 optimizations. If you compile it for yourself only, keeping the
135 optimizations enabled is recommended.
138 After compilation you can install the Toolkit into your system by giving
142 <tt>make install</tt>
145 <br /> <br /> <br />
146 <b><a name="windows"></a>Building on Windows</b>
149 The Toolkit can be compiled several different ways on Windows. However,
150 this document describes the method to build the Toolkit to produce native
151 Win32 binaries. The Toolkit package can also be compiled on Cygwin and
152 MinGW. For these systems please refer to the README.WIN32 file in the
156 The Toolkit package includes ready MSVC++ Workspace files, that will
157 automatically compile the Toolkit. The MSVC++ workspace and project files
158 resides in the win32/ subdirectory of the Toolkit package. The `srt.dsw'
159 file is the workspace file that automatically supports compiling the Toolkit
160 and to generate the SILC Runtime DLL (libsrt.dll). You may also compile
161 debug version by selecteing the Debug compilation method.
163 <br /> <br /> <br />
164 <b><a name="macosx"></a>Building on Mac OS X</b>
167 Building the Toolkit on Mac OS X is almost identical on compiling on Unix
168 system. The reason for this is that the Mac OS X is Unix based operating
169 system. To build the Toolkit on Mac OS X, give the following commands:
173 setenv CFLAGS -no-cpp-precomp<br />
174 ./configure powerpc<br />
179 The ./configure can take several options as arguments. To see them all give
183 <tt>./configure --help</tt>
194 After compilation you can install the Toolkit into your system by giving
198 <tt>make install</tt>
200 <br /> <br /> <br />
201 <b><a name="symbian"></a>Building on Symbian OS</b>
204 The build environment for Symbian OS requires Carbide.c++ and MS Windows.
207 Download the freely available Carbide.c++ from Nokia at
208 <a href="http://forum.nokia.com">http://forum.nokia.com</a>. The exact
209 hyperlink location changes often, so it is not referenced here. It is
210 usually under "Tools and SDKs" link.
213 After installation a web browser is opened automatically by the
214 Carbide.c++ installer. Follow its instructions by installing the Perl,
215 CTags and the SDK. Perl and the SDK are required, but CTags is
216 optional and if necessary can be omitted.
219 The Toolkit is generic C and C++ code and should work with any
220 SDK. If you don't have SDK already installed, install the latest
221 version you can find. The links to SDKs are found in the Carbide.c++
222 instructions after installation. If you already have SDK in your
223 system, you should use that.
226 After installation import the Toolkit project to Carbide.c++ from the
227 symbian/ subdirectory in the Toolkit package.
230 Please read the README.SYMBIAN from the SILC Runtime Toolkit package for
231 complete building instructions.
234 </div> <!-- content -->
236 </div> <!-- contentwrapper -->
238 <table border="0" cellspacing="0" cellpadding="6" width="100%">
240 <td>Copyright © 2001 - 2008 SILC Project<br />
241 <a href="http://silcnet.org">SILC Project Website</a></td>
243 <a href="index.html">SILC Runtime Toolkit Manual</a><br />
244 <a href="masterindex.html">Index</a></small></td>