1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
|
======================================================================
Requirements
======================================================================
Operating System
----------------
Ice is expected to build and run properly on any recent Linux
distribution for x86 and x86_64. However, Ice is officially supported
only on:
- Red Hat Enterprise Linux Advanced Server 4 Update 6 for i386 or
x86_64 (RHEL 4.6)
- Red Hat Enterprise Linux 5 Update 1 for i386 or x86_64 (RHEL 5.1)
- Novell SuSE Linux Enterprise Server 10 Service Pack 1 for i586 or
x86_64 (SLES 10 SP1)
C++ compiler
------------
Ice is expected to build properly with GCC 3.3 or later. However, only
the following compilers are officially supported:
- GCC 3.4.6 on RHEL 4.6
- GCC 4.1.2 on RHEL 5.1
- GCC 4.1.x on SLES 10 SP1
Required packages
-----------------
On RHEL 4, Ice requires the nptl-devel package, which contains the
function pthread_condattr_setclock.
Third-party libraries
---------------------
Ice has dependencies on a number of third-party libraries:
- Berkeley DB 4.6.21
- expat 1.95.7 or 2.0.1
- OpenSSL 0.9.7 or later (OpenSSL 0.9.8 or later recommended)
- bzip2 1.0.x
- mcpp 2.7.2
Some of these packages may have been included in your Linux
distribution. For those packages that are not installed or have an
older version than what is listed above, we recommend downloading the
Ice third-party source archive from
http://www.zeroc.com/download.html
This archive contains the source distributions for each of the
third-party dependencies, as well as required source patches and
configuration instructions.
ZeroC also supplies RPMs at the link above for Berkeley DB on RHEL
4.x, RHEL 5.x and SLES 10.x.
For more information about these dependencies, please refer to
the links below:
Berkeley DB http://www.oracle.com/database/berkeley-db/index.html
expat http://expat.sourceforge.net
OpenSSL http://www.openssl.org
bzip2 http://sources.redhat.com/bzip2
mcpp http://mcpp.sourceforge.net
======================================================================
Compilation and Testing
======================================================================
Extract the Ice archive in any directory you like (for example, in
your home directory):
$ tar xvfz Ice-3.3.1.tar.gz
Change the working directory to Ice-3.3.1/cpp:
$ cd Ice-3.3.1/cpp
Edit config/Make.rules to establish your build configuration. The
comments in the file provide more information. Pay particular
attention to the variables that define the locations of the third-
party libraries.
Now you're ready to build Ice:
$ make
This will build the Ice core libraries, services, tests and examples.
Python is required to run the test suite:
http://www.python.org/download
After a successful build, you can run the test suite:
$ make test
This is equivalent to:
$ python allTests.py
If everything worked out, you should see lots of "ok" messages. In
case of a failure, the tests abort with "failed".
If you want to try out any of the demos, make sure to update your PATH
environment variable to add the "bin" directory, and your
LD_LIBRARY_PATH environment variable to add the "lib" directory:
$ export PATH=`pwd`/bin:$PATH
$ export LD_LIBRARY_PATH=`pwd`/lib:$LD_LIBRARY_PATH
======================================================================
64-bit builds on x86_64
======================================================================
To build Ice in 64-bit mode, you need to do the following:
- Obtain or build all the third-party dependencies, and put the 64-bit
libraries in the "lib64" directories. For example, put Berkeley DB
64-bit libraries in $DB_HOME/lib64.
- Build and test as described above (with gcc).
======================================================================
32-bit builds on x86_64
======================================================================
By default, builds on x86_64 are 64-bit. To perform a 32-bit build
on a x86_64 Linux system, set the environment variable LP64 to no,
as shown below:
$ export LP64=no
======================================================================
Installation
======================================================================
Simply run "make install". This will install Ice in the directory
specified by the "prefix" variable in config/Make.rules.
After installation, make sure that the <prefix>/bin directory is in
your PATH, and the <prefix>/lib directory is in your LD_LIBRARY_PATH.
If you built Berkeley DB yourself, please ensure that its installation
lib directory is also in your LD_LIBRARY_PATH. When compiling Ice
programs, you must pass the location of the <prefix>/include directory
to the compiler with the -I option, and the location of the
<prefix>/lib directory with the -L option.
On a x86_64 system, the libraries are installed in <prefix>/lib64
unless LP64 is set to no. No other changes are necessary.
|