]>
Commit | Line | Data |
---|---|---|
02d1d628 AMH |
1 | ================================================================ |
2 | Copyright (c) 1999, 2000 Arnar M. Hrafnkelsson. All rights reserved. | |
3 | This program is free software; you can redistribute it and/or | |
4 | modify it under the same terms as Perl itself. | |
5 | ================================================================ | |
6 | ||
7 | >> THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY WHATSOEVER << | |
8 | ||
9 | ================================================================ | |
10 | ||
11 | ||
12 | ======================== | |
13 | 1. Patent infringements? | |
14 | ======================== | |
15 | ||
16 | Imager as such contains no patented algorithms. The external | |
17 | libraries (which are not written by me) may or may not contain | |
18 | patented algorithms. YOU ARE SOLELY RESPONSIBLE FOR OBTAINING | |
19 | LICENSE(S) TO USE SUCH LIBRARIES SHOULD YOU NEED ANY. | |
20 | ||
21 | ||
22 | ======================== | |
23 | 2. Compiling and testing | |
24 | ======================== | |
25 | ||
26 | Some care has been taken to make the installation as smooth as | |
27 | possible. This is rather hard due to the difference between operating | |
28 | systems and site setups. To get started just type | |
29 | ||
30 | $ perl Makefile.PL | |
31 | ||
32 | It should blurb out a list of which libraries were found and which | |
33 | not. If you add a library to the machine after installing Imager it | |
34 | does not automatically become available in Imager. It only uses the | |
35 | libraries that are found. If the list of found libraries is not what | |
36 | you expected, then the Makefile.PL is either not searching in the | |
37 | right directories or your box does not have the libraries you think it | |
38 | does. For a list of where to get the libraries have a look at | |
39 | 3. External dependencies. To widen the search path for libraries and | |
40 | include files set the IM_INCPATH and IM_LIBPATH variables. The | |
41 | environment variables that matter when Makefile.PL is run are | |
42 | ||
43 | IM_INCPATH colon separated list of paths to extra include files | |
44 | IM_LIBPATH colon separated list of paths to extra library files | |
45 | ||
46 | IM_VERBOSE turns on verbose mode for the library scanning and such | |
47 | IM_MANUAL to manually select which libraries are used and which not | |
48 | IM_NOLOG if true logging will not be compiled into the module | |
49 | IM_DEBUG_MALLOC if true malloc debugging will be compiled into the module | |
50 | do not use IM_DEBUG_MALLOC in production - this slows | |
51 | everything down | |
52 | ||
53 | IM_CFLAGS Extra flags to pass to the compiler | |
54 | IM_LFLAGS Extra flags to pass to the linker | |
55 | IM_DFLAGS Extra flags to pass to the preprocessor | |
56 | ||
57 | ||
58 | ||
59 | When finding the libraries has been sorted out it's time for | |
60 | ||
61 | $ make | |
62 | ||
63 | and if that works then do | |
64 | ||
65 | $ make test | |
66 | ||
67 | If either fails do take a peek at the file errep.perl. It's creates a | |
68 | file report.txt. This is some information which will help me discover | |
69 | where the problem is so I can try to fix it in future releases. If | |
70 | you find running it ok (just remember - no warranty!) please send the | |
71 | report.txt via email to addi@umich.edu . | |
72 | ||
73 | Troubleshooting tips: | |
74 | ||
75 | A common problem is that libgif/libungif are sometimes linked to the X | |
76 | libraries and then running the tests fails. In that case something | |
77 | like: | |
78 | ||
79 | $ IM_LFLAGS="-L/usr/X11R6/lib -lX11" perl Makefile.PL | |
80 | ||
81 | Which simply sets the environment variables for the extra libraries | |
82 | to include the X libraries (which we do not use at all, but must | |
83 | included since libgif has been linked with it). | |
84 | ||
85 | Also note that libgif has a few bugs: You can run something like | |
86 | ||
e3ddf807 | 87 | $ perl -Iblib/lib -Iblib/arch t/t105gif.t |
02d1d628 AMH |
88 | |
89 | This way you can see what comments the test script prints out. | |
e3ddf807 | 90 | t/t105gif.t checks for an bug in libgif and prints out a patch |
02d1d628 AMH |
91 | if that bug is present, note that this bug only affects the more |
92 | "advanced" features of libgif. | |
93 | ||
48412c20 AMH |
94 | If for some reason you have libungif-devel package installed but |
95 | not libungif on RedHat then you will probably get lots of errors | |
96 | like undefined symbol: FreeSavedImages when running make test. | |
97 | Install libungif package to fix it. | |
98 | ||
99 | ||
02d1d628 AMH |
100 | Imager needs to have a fairly recent libtiff installed (we know it |
101 | it runs fine with 3.5.5). In the future we might consider supporting older | |
102 | libtiff versions. For now you can either configure Imager manually (by | |
103 | setting the IM_MANUAL environment variable to 1, in sh: | |
104 | ||
105 | $ IM_MANUAL=1 perl Makefile.PL | |
106 | ||
107 | and simply say no to tiff support when asked if you want it, the same thing | |
108 | can be used to circumvent problems in gifs to get Imager going. | |
109 | ||
110 | ||
111 | If it worked just continue with the installation as normally | |
112 | (with make install). | |
113 | ||
114 | ======================== | |
115 | 3. External dependencies | |
116 | ======================== | |
117 | ||
118 | Some hints about getting the Imager module to find the libraries it | |
119 | needs for specific features. The libraries it uses are: | |
120 | ||
121 | jpeg: ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz | |
122 | ||
123 | png: ftp://ftp.uu.net/graphics/png | |
124 | you also need zlib to use png: ftp://ftp.uu.net/pub/archiving/zip/zlib | |
ae448e5a | 125 | We have encountered problems with libpng 1.0.1, which were fixed in 1.0.5 |
02d1d628 AMH |
126 | |
127 | gif: http://www.arrakeen.demon.co.uk/giflib/ | |
128 | or at: http://prtr-13.ucsc.edu/~badger/software/libungif/index.shtml | |
129 | ||
130 | tiff: http://www.libtiff.org/ | |
131 | ||
132 | t1: ftp://ftp.neuroinformatik.ruhr-uni-bochum.de/pub/software/t1lib/ | |
133 | or at: ftp://sunsite.unc.edu/pub/Linux/libs/graphics/ | |
134 | ||
135 | tt: http://www.freetype.org/ | |
136 | ||
137 | ||
138 | Precompiled versions of some of the libraries might be found at: | |
139 | ||
140 | AIX: | |
141 | http://www.bull.de/ | |
142 | ftp://ftp.rge.com/pub/systems/aix/bull/ | |
143 | ||
144 | ||
145 | ||
146 | ======================== | |
147 | 4. Logging and debugging | |
148 | ======================== | |
149 | ||
150 | Logging is compiled in by default - if you should want to get of it | |
151 | from the binaries you can do so by setting the env IMAGER_NOLOG | |
152 | to something. If you want to enable malloc debugging to check for leaks | |
153 | then set IMAGER_DEBUG_MALLOC to something. Needless to say it is | |
154 | pretty pointless to have malloc debug enabled with no logging since you | |
155 | can never see the malloc information that way. | |
156 | ||
157 | ||
158 | ======================== | |
159 | 5. Truetype information | |
160 | ======================== | |
161 | ||
162 | If you enable the truetype part and want it to be TESTED you MUST set | |
163 | the environment variable TTFONTTEST to a complete path to a truetype | |
164 | font. | |
165 | ||
166 | ||
167 | ================= | |
168 | 6. Win32 Support | |
169 | ================= | |
170 | ||
171 | Imager can be installed on Win32 systems. This was ported and tested | |
faa9b3e7 TC |
172 | with Microsoft Visual C++ 6.0 with build 623 of ActivePerl. You can |
173 | use all of the features of Imager. You can also use Win32 GDI fonts | |
174 | directly by supplying the 'face' parameter to Imager::Font->new(...). | |
175 | ||
176 | I've tested with both MSVC++ 6.0 and cygwin (perl 5.6.1). | |
02d1d628 AMH |
177 | |
178 | If you have any problems with the Win32 support, please email | |
179 | tony@develop-help.com (don't forget to use nmake instead of make). | |
180 | ||
181 | ======================= | |
182 | 7. General information | |
183 | ======================= | |
184 | ||
185 | The Imager module homepage is currently at: | |
186 | ||
187 | http://www.eecs.umich.edu/~addi/perl/Imager/ | |
188 | ||
189 | The current docs are rather bad as I've been busy adding features | |
190 | but hopefully they will be updated soon. Until then you'll just | |
191 | have to use the source. The test scripts might also be a good idea. | |
192 | By activating the the #init_log lines in the test script you can get | |
193 | rather verbose debugging output from the C code. | |
194 | ||
195 | ||
196 | ======================== | |
197 | 8. Thanks | |
198 | ======================== | |
199 | ||
200 | Thanks go to: | |
201 | Tony Cook ( TonyC ) | |
202 | Claes Jacobson ( Claes ) | |
203 | Philip Gwyn ( Leolo ) | |
df917a00 | 204 | Michael Slade ( Micksa ) |
02d1d628 AMH |
205 | Brad Murray ( HalfJack ) |
206 | Nicholas Dronen ( Veblen ) | |
207 | Michael G Schwern ( Schwern ) | |
208 | Rocco Caputo ( Dngor ) | |
209 | Graham barr ( Gbarr ) | |
210 | Mark-Jason Dominus ( Mjd ) | |
211 | Jerome | |
212 | Jason Alexander ( Jalex ) | |
213 | Randal R. Schwartz ( Merlyn ) | |
214 | Tkil ( ) | |
215 | Artur Bergman ( Sky ) | |
216 | Luc St-Louis ( Lucs ) | |
217 | PerlJam ( ) | |
218 | Roderick Schertler ( Roderick ) | |
219 | Nathan Torkington ( gnat ) | |
220 | ||
221 | (and just to play it safe) all those I forgot to mention. |