~ubuntu-branches/ubuntu/intrepid/graphicsmagick/intrepid

« back to all changes in this revision

Viewing changes to PLATFORMS.txt

  • Committer: Bazaar Package Importer
  • Author(s): Daniel Kobras
  • Date: 2006-05-06 16:28:08 UTC
  • Revision ID: james.westby@ubuntu.com-20060506162808-vt2ni3r5nytcszms
Tags: upstream-1.1.7
ImportĀ upstreamĀ versionĀ 1.1.7

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
Copyright (C) 2003 GraphicsMagick Group
 
2
Copyright (C) 2002 ImageMagick Studio
 
3
Copyright (C) 1999 E. I. du Pont de Nemours and Company
 
4
 
 
5
This program is covered by multiple licenses, which are described in
 
6
Copyright.txt. You should have received a copy of Copyright.txt with this
 
7
package; otherwise see http://www.graphicsmagick.org/www/Copyright.html.
 
8
---------------------------------------------------------------------------
 
9
 
 
10
This file provides platform specific portability notes which don't
 
11
belong in README.txt. Usually GraphicsMagick compiles fine according to the
 
12
procedures described in README.txt, but sometimes a platform related
 
13
oddity causes a failure.
 
14
 
 
15
Cygwin
 
16
======
 
17
 
 
18
  Problem
 
19
 
 
20
    PerlMagick fails to link.
 
21
 
 
22
  Indications
 
23
 
 
24
    libperl.a is not found.
 
25
 
 
26
  Solution
 
27
 
 
28
    Configure like
 
29
 
 
30
      ./configure --enable-shared
 
31
 
 
32
    or
 
33
 
 
34
      ./configure --enable-shared --with-modules
 
35
 
 
36
    Cygwin doesn't normally come with a libperl.a but it does come with the
 
37
    equivalent DLL.  Using a shared build gets PerlMagick over the hurdle.
 
38
    
 
39
 
 
40
SGI Irix
 
41
=========
 
42
 
 
43
  Problem
 
44
 
 
45
    How to successfully configure GraphicsMagick using SGI's commercial
 
46
    compiler (e.g. IRIX C/C++ v7.3.1.X)?
 
47
 
 
48
  Indications
 
49
 
 
50
    Compiling C++ code fails with the error:
 
51
    #error directive:  This header file requires the -LANG:std option
 
52
 
 
53
  Solution
 
54
 
 
55
    Configure like
 
56
 
 
57
      CC=cc CFLAGS="-O2 -OPT:Olimit=0" CXX=CC \
 
58
      CXXFLAGS="-LANG:std -Wl,-woff,84 -O2" CXXCPP="CC -LANG:std -E" \
 
59
      ./configure --with-modules --with-threads ...
 
60
 
 
61
    with the following in /etc/compiler.defaults
 
62
 
 
63
      -DEFAULT:abi=n32:isa=mips3
 
64
 
 
65
Linux 6.1
 
66
=========
 
67
 
 
68
  Problem
 
69
 
 
70
    When '-rpath /somedir' is added to LDFLAGS in order to tell the
 
71
    linker to apply a run-time linker path, configure fails.
 
72
 
 
73
  Indications
 
74
 
 
75
    The configure script prints the error message
 
76
 
 
77
      checking for executable suffix...
 
78
                                  configure: error: cannot compute EXEEXT:
 
79
 
 
80
    and the error message
 
81
 
 
82
      gcc: unrecognized option `-rpath'
 
83
 
 
84
    is written to config.log
 
85
 
 
86
  Solution
 
87
 
 
88
    Use 'LDFLAGS=-Wl,-rpath,/somedir' instead to pass the options through
 
89
    to the linker.
 
90
 
 
91
FreeBSD 3.X and 4.X
 
92
===================
 
93
 
 
94
  Problem
 
95
  
 
96
    GraphicsMagick does not run after it is installed. The system does not
 
97
    see an installed shared library until the 'ldconfig' command has
 
98
    been executed (as root) using the correct options.
 
99
 
 
100
  Indications
 
101
  
 
102
    System fails to find shared library needed by GraphicsMagick.
 
103
 
 
104
  Solution
 
105
  
 
106
    Either reboot the system (which automatically runs ldconfig) or
 
107
    execute
 
108
 
 
109
      /sbin/ldconfig -m ${PREFIX}/lib
 
110
 
 
111
    where ${PREFIX} is the prefix used when configuring GraphicsMagick
 
112
    (default /usr/local).
 
113
 
 
114
Digital Unix and OSF/1
 
115
======================
 
116
 
 
117
  Problem
 
118
  
 
119
    Digital Unix provides an outdated JPEG shared library as part of the
 
120
    system.
 
121
    
 
122
  Indications
 
123
 
 
124
    GraphicsMagick fails to link.
 
125
 
 
126
  Solution
 
127
  
 
128
    Ensure that the JPEG library you installed is used. Be sure to
 
129
    install the JPEG library as a shared library.
 
130
 
 
131
Solaris 2.X
 
132
============
 
133
 
 
134
  Problem
 
135
  
 
136
    An outdated delegate library is used rather than the one just
 
137
    installed.
 
138
    
 
139
  Indications
 
140
  
 
141
    o Failure to link due to unresolved symbols
 
142
    o Failure to run properly
 
143
    o The command 'ldd `which convert`' lists the wrong library.
 
144
  
 
145
  Solution
 
146
 
 
147
    If the problem library is a shared library (.so extension) then
 
148
    install your own library as a shared library. Then add the required
 
149
    -L and -R options to find your shared library at both link and run
 
150
    time. For example, if your library is is installed in /usr/local/lib:
 
151
      
 
152
      configure LDFLAGS='-L/usr/local/lib -R/usr/local/lib' 
 
153
 
 
154
  Problem
 
155
 
 
156
    An outdated libtiff.so (libtiff.so.3) is installed in
 
157
    /usr/openwin/lib. This library may be used by accident rather than
 
158
    the intended libtiff.so, or libtiff.a. In particular, the linker
 
159
    generally considers linking against a shared library before it
 
160
    considers static libraries, so the system libtiff.so may be used
 
161
    even though there is an installed libtiff.a earlier in the linker
 
162
    search path.
 
163
 
 
164
  Indications
 
165
  
 
166
    GraphicsMagick fails to link or load TIFF files.
 
167
 
 
168
  Solution
 
169
 
 
170
    o Install libtiff as a shared library, and make sure that LDFLAGS
 
171
      contains the required -L and -R options to find your shared
 
172
      library at both link and run time. For example, if libtiff.so is
 
173
      installed in /usr/local/lib:
 
174
      
 
175
      configure LDFLAGS='-L/usr/local/lib -R/usr/local/lib'
 
176
 
 
177
    or
 
178
      
 
179
    o Remove /usr/openwin/lib/libtiff.so.3. Note that if you take this
 
180
      step, some tools like 'imagetool' and 'pageview' will stop working.
 
181
 
 
182
  Problem
 
183
  
 
184
    When using gcc 3.0.X, configure decides that the compiler is insufficient
 
185
    to compile Magick++.
 
186
    
 
187
  Indications
 
188
  
 
189
    Fails ISO C++ test.
 
190
  
 
191
  Solution
 
192
 
 
193
    The problem is due to gcc provided headers undefining
 
194
    Solaris-provided defines for 64-bit versions of stdio functions. The
 
195
    solution is to either configure with --disable-largefile or edit the
 
196
    installed g++-v3/bits/std_cstdio.h to bracket the offending undefs
 
197
    (for fgetpos, fopen, freopen, fsetpos, & tmpfile) like:
 
198
 
 
199
    #if _FILE_OFFSET_BITS != 64
 
200
    #undef fopen
 
201
    #endif
 
202
 
 
203
       or
 
204
 
 
205
    Install gcc 3.1 (or later) instead.
 
206
 
 
207
  Problem
 
208
 
 
209
    A static library was used in a shared library build.
 
210
 
 
211
  Indications
 
212
 
 
213
    Linker prints a warning similar to:
 
214
 
 
215
    "ld: fatal: relocations remain against allocatable but non-writable
 
216
     sections"
 
217
 
 
218
  Solution
 
219
 
 
220
    All libraries used in a shared library build *must* also be shared
 
221
    libraries. Check all libraries referenced in the libtool link
 
222
    command line and verify that all of the referenced libraries are
 
223
    indeed shared libraries. All system libraries are available as
 
224
    shared libraries so it is likely that any static library is locally
 
225
    installed.
 
226