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
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
|
======================================================================
Requirements
======================================================================
Operating System
----------------
Solaris 8 or Solaris 9 on SPARC.
You also need to have /dev/urandom installed. This is the default with
Solaris 9; on Solaris 8, you need to install patch 112438-01.
C++ compiler
------------
The following Sun compilers are supported:
- Sun C++ 5.4 (part of Sun ONE Studio 7.0 aka Forte Developer 7).
- Sun C++ 5.5 (part of Sun ONE Studio 8.0). Ice takes advantage of the
new linker scoping feature to reduce the number of symbols exported
by Ice shared libraries.
Builds with the following compilers are expected to succeed, but these
compilers are not supported at this time:
- Sun C++ 5.6 and 5.7 (Sun Studio 9 and Sun Studio 10)
- GCC 3.4.2
Third-party libraries
---------------------
- Berkeley DB 4.2.52 or 4.3.21 with C++ support enabled, and built
with a C++ compiler compatible with the one you are using.
Note that Ice for Java is not compatible with version 4.3.21,
therefore if you intend to use Ice for Java with Berkeley DB,
you must use version 4.2.52 and the option --enable-java.
- expat 1.9x
- OpenSSL 0.97
- bzip2 1.0
Berkeley DB can be downloaded from:
http://www.sleepycat.com/download
expat can be downloaded from:
http://www.sunfreeware.com
Or from:
http://sourceforge.net/projects/expat/
OpenSSL 0.97 can be downloaded (in binary form) from:
http://www.sunfreeware.com
Or you can download the source from:
http://www.openssl.org
bzip2 may already be installed on your system. If not, we recommend to
download it (in binary form) from http://www.sunfreeware.com.
GNU Make 3.80
-------------
GNU Make 3.80 is required to build Ice on SPARC/Solaris. You can
download GNU Make from http://www.sunfreeware.com.
Python 2.x
----------
To run the automated test suite, you will need Python 2.2 or greater.
If you have no interest in running the test scripts, Python is not
required. You can download Python from http://www.sunfreeware.com.
======================================================================
Compilation and Testing
======================================================================
Extract the Ice archive in any directory you like (for example, in
your home directory):
$ tar xvfz Ice-<version>.tar.gz
Change the working directory to Ice-<version>:
$ cd Ice-<version>
Edit the file config/Make.rules according to the comments in this
file. Make sure that the paths for the third-party libraries are set
correctly if they are not installed in the default location /usr/lib
and /usr/include.
If you want to build with g++ instead of CC, edit
config/Make.rules.SunOS and change or comment out the CXX = <compiler>
line (at the top of the file). The default value for CXX with GNU
make is g++.
Now you're ready to build Ice:
$ gmake
This will build the Ice core library, all add-ons, all tests, and all
examples.
CC 5.4 note
-----------
The Sun CC 5.4 build produces a large number of warnings about hidden
functions in the fstream and sstream standard headers. This is a known
Sun bug (#4852754). You can suppress them by removing the
corresponding '+w' option in config/Make.rules.SunOS, or by filtering
your build log file with a sed script such as:
# Workaround for bug 4852754
/SUNWspro/d
/While specializing "std::/d
/Where: Specialized in non-template code./d
/Warning(s) detected./d
After a successful build, you can run the test suite, provided that
you installed Python:
$ gmake test
This is equivalent to:
$ python allTests.py
If everything worked out, you should see lots of "ok". In case of a
failure, the tests abort with "failed".
If you want to try out any of the demos, make sure to add "bin" to
PATH and "lib" to LD_LIBRARY_PATH or LD_LIBRARY_PATH_64 (for 64 bit
builds):
$ export PATH=`pwd`/bin:$PATH
$ export LD_LIBRARY_PATH=`pwd`/lib:$LD_LIBRARY_PATH
$ export LD_LIBRARY_PATH_64=`pwd`/lib:$LD_LIBRARY_PATH_64
======================================================================
64 bit builds
======================================================================
To build Ice in 64 bit mode, you need to:
- Obtain or build all the third party dependencies, and put the 64 bit
libraries in the "lib/sparcv9" directories. For example put Berkeley
DB 64 bit libraries in $DB_HOME/lib/sparcv9.
- Set the environment variable LP64 to yes, e.g.:
$ export LP64=yes
- Build and test as described above.
======================================================================
Installation
======================================================================
Simply run "gmake install". This will install Ice in the "prefix"
directory specified in the file 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. When compiling Ice programs, you must also make sure
to 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.
If you built in 64 bit mode, the libraries are installed in
<prefix>/lib/sparcv9 and the programs are installed in
<prefix>/bin/sparcv9. Other files are identical for 32 and 64 bit.
|