Warning, /graphics/glaxnimate/external/potrace/INSTALL is written in an unsupported language. File is not indexed.
0001 Installation Instructions 0002 ************************* 0003 0004 Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software 0005 Foundation, Inc. 0006 0007 Copying and distribution of this file, with or without modification, 0008 are permitted in any medium without royalty provided the copyright 0009 notice and this notice are preserved. This file is offered as-is, 0010 without warranty of any kind. 0011 0012 Basic Installation 0013 ================== 0014 0015 Briefly, the shell command './configure && make && make install' 0016 should configure, build, and install this package. The following 0017 more-detailed instructions are generic; see the 'README' file for 0018 instructions specific to this package. Some packages provide this 0019 'INSTALL' file but do not implement all of the features documented 0020 below. The lack of an optional feature in a given package is not 0021 necessarily a bug. More recommendations for GNU packages can be found 0022 in *note Makefile Conventions: (standards)Makefile Conventions. 0023 0024 The 'configure' shell script attempts to guess correct values for 0025 various system-dependent variables used during compilation. It uses 0026 those values to create a 'Makefile' in each directory of the package. 0027 It may also create one or more '.h' files containing system-dependent 0028 definitions. Finally, it creates a shell script 'config.status' that 0029 you can run in the future to recreate the current configuration, and a 0030 file 'config.log' containing compiler output (useful mainly for 0031 debugging 'configure'). 0032 0033 It can also use an optional file (typically called 'config.cache' and 0034 enabled with '--cache-file=config.cache' or simply '-C') that saves the 0035 results of its tests to speed up reconfiguring. Caching is disabled by 0036 default to prevent problems with accidental use of stale cache files. 0037 0038 If you need to do unusual things to compile the package, please try 0039 to figure out how 'configure' could check whether to do them, and mail 0040 diffs or instructions to the address given in the 'README' so they can 0041 be considered for the next release. If you are using the cache, and at 0042 some point 'config.cache' contains results you don't want to keep, you 0043 may remove or edit it. 0044 0045 The file 'configure.ac' (or 'configure.in') is used to create 0046 'configure' by a program called 'autoconf'. You need 'configure.ac' if 0047 you want to change it or regenerate 'configure' using a newer version of 0048 'autoconf'. 0049 0050 The simplest way to compile this package is: 0051 0052 1. 'cd' to the directory containing the package's source code and type 0053 './configure' to configure the package for your system. 0054 0055 Running 'configure' might take a while. While running, it prints 0056 some messages telling which features it is checking for. 0057 0058 2. Type 'make' to compile the package. 0059 0060 3. Optionally, type 'make check' to run any self-tests that come with 0061 the package, generally using the just-built uninstalled binaries. 0062 0063 4. Type 'make install' to install the programs and any data files and 0064 documentation. When installing into a prefix owned by root, it is 0065 recommended that the package be configured and built as a regular 0066 user, and only the 'make install' phase executed with root 0067 privileges. 0068 0069 5. Optionally, type 'make installcheck' to repeat any self-tests, but 0070 this time using the binaries in their final installed location. 0071 This target does not install anything. Running this target as a 0072 regular user, particularly if the prior 'make install' required 0073 root privileges, verifies that the installation completed 0074 correctly. 0075 0076 6. You can remove the program binaries and object files from the 0077 source code directory by typing 'make clean'. To also remove the 0078 files that 'configure' created (so you can compile the package for 0079 a different kind of computer), type 'make distclean'. There is 0080 also a 'make maintainer-clean' target, but that is intended mainly 0081 for the package's developers. If you use it, you may have to get 0082 all sorts of other programs in order to regenerate files that came 0083 with the distribution. 0084 0085 7. Often, you can also type 'make uninstall' to remove the installed 0086 files again. In practice, not all packages have tested that 0087 uninstallation works correctly, even though it is required by the 0088 GNU Coding Standards. 0089 0090 8. Some packages, particularly those that use Automake, provide 'make 0091 distcheck', which can by used by developers to test that all other 0092 targets like 'make install' and 'make uninstall' work correctly. 0093 This target is generally not run by end users. 0094 0095 Compilers and Options 0096 ===================== 0097 0098 Some systems require unusual options for compilation or linking that 0099 the 'configure' script does not know about. Run './configure --help' 0100 for details on some of the pertinent environment variables. 0101 0102 You can give 'configure' initial values for configuration parameters 0103 by setting variables in the command line or in the environment. Here is 0104 an example: 0105 0106 ./configure CC=c99 CFLAGS=-g LIBS=-lposix 0107 0108 *Note Defining Variables::, for more details. 0109 0110 Compiling For Multiple Architectures 0111 ==================================== 0112 0113 You can compile the package for more than one kind of computer at the 0114 same time, by placing the object files for each architecture in their 0115 own directory. To do this, you can use GNU 'make'. 'cd' to the 0116 directory where you want the object files and executables to go and run 0117 the 'configure' script. 'configure' automatically checks for the source 0118 code in the directory that 'configure' is in and in '..'. This is known 0119 as a "VPATH" build. 0120 0121 With a non-GNU 'make', it is safer to compile the package for one 0122 architecture at a time in the source code directory. After you have 0123 installed the package for one architecture, use 'make distclean' before 0124 reconfiguring for another architecture. 0125 0126 On MacOS X 10.5 and later systems, you can create libraries and 0127 executables that work on multiple system types--known as "fat" or 0128 "universal" binaries--by specifying multiple '-arch' options to the 0129 compiler but only a single '-arch' option to the preprocessor. Like 0130 this: 0131 0132 ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ 0133 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \ 0134 CPP="gcc -E" CXXCPP="g++ -E" 0135 0136 This is not guaranteed to produce working output in all cases, you 0137 may have to build one architecture at a time and combine the results 0138 using the 'lipo' tool if you have problems. 0139 0140 Installation Names 0141 ================== 0142 0143 By default, 'make install' installs the package's commands under 0144 '/usr/local/bin', include files under '/usr/local/include', etc. You 0145 can specify an installation prefix other than '/usr/local' by giving 0146 'configure' the option '--prefix=PREFIX', where PREFIX must be an 0147 absolute file name. 0148 0149 You can specify separate installation prefixes for 0150 architecture-specific files and architecture-independent files. If you 0151 pass the option '--exec-prefix=PREFIX' to 'configure', the package uses 0152 PREFIX as the prefix for installing programs and libraries. 0153 Documentation and other data files still use the regular prefix. 0154 0155 In addition, if you use an unusual directory layout you can give 0156 options like '--bindir=DIR' to specify different values for particular 0157 kinds of files. Run 'configure --help' for a list of the directories 0158 you can set and what kinds of files go in them. In general, the default 0159 for these options is expressed in terms of '${prefix}', so that 0160 specifying just '--prefix' will affect all of the other directory 0161 specifications that were not explicitly provided. 0162 0163 The most portable way to affect installation locations is to pass the 0164 correct locations to 'configure'; however, many packages provide one or 0165 both of the following shortcuts of passing variable assignments to the 0166 'make install' command line to change installation locations without 0167 having to reconfigure or recompile. 0168 0169 The first method involves providing an override variable for each 0170 affected directory. For example, 'make install 0171 prefix=/alternate/directory' will choose an alternate location for all 0172 directory configuration variables that were expressed in terms of 0173 '${prefix}'. Any directories that were specified during 'configure', 0174 but not in terms of '${prefix}', must each be overridden at install time 0175 for the entire installation to be relocated. The approach of makefile 0176 variable overrides for each directory variable is required by the GNU 0177 Coding Standards, and ideally causes no recompilation. However, some 0178 platforms have known limitations with the semantics of shared libraries 0179 that end up requiring recompilation when using this method, particularly 0180 noticeable in packages that use GNU Libtool. 0181 0182 The second method involves providing the 'DESTDIR' variable. For 0183 example, 'make install DESTDIR=/alternate/directory' will prepend 0184 '/alternate/directory' before all installation names. The approach of 0185 'DESTDIR' overrides is not required by the GNU Coding Standards, and 0186 does not work on platforms that have drive letters. On the other hand, 0187 it does better at avoiding recompilation issues, and works well even 0188 when some directory options were not specified in terms of '${prefix}' 0189 at 'configure' time. 0190 0191 Optional Features 0192 ================= 0193 0194 If the package supports it, you can cause programs to be installed 0195 with an extra prefix or suffix on their names by giving 'configure' the 0196 option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'. 0197 0198 Some packages pay attention to '--enable-FEATURE' options to 0199 'configure', where FEATURE indicates an optional part of the package. 0200 They may also pay attention to '--with-PACKAGE' options, where PACKAGE 0201 is something like 'gnu-as' or 'x' (for the X Window System). The 0202 'README' should mention any '--enable-' and '--with-' options that the 0203 package recognizes. 0204 0205 For packages that use the X Window System, 'configure' can usually 0206 find the X include and library files automatically, but if it doesn't, 0207 you can use the 'configure' options '--x-includes=DIR' and 0208 '--x-libraries=DIR' to specify their locations. 0209 0210 Some packages offer the ability to configure how verbose the 0211 execution of 'make' will be. For these packages, running './configure 0212 --enable-silent-rules' sets the default to minimal output, which can be 0213 overridden with 'make V=1'; while running './configure 0214 --disable-silent-rules' sets the default to verbose, which can be 0215 overridden with 'make V=0'. 0216 0217 Particular systems 0218 ================== 0219 0220 On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC 0221 is not installed, it is recommended to use the following options in 0222 order to use an ANSI C compiler: 0223 0224 ./configure CC="cc -Ae -D_XOPEN_SOURCE=500" 0225 0226 and if that doesn't work, install pre-built binaries of GCC for HP-UX. 0227 0228 HP-UX 'make' updates targets which have the same time stamps as their 0229 prerequisites, which makes it generally unusable when shipped generated 0230 files such as 'configure' are involved. Use GNU 'make' instead. 0231 0232 On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot 0233 parse its '<wchar.h>' header file. The option '-nodtk' can be used as a 0234 workaround. If GNU CC is not installed, it is therefore recommended to 0235 try 0236 0237 ./configure CC="cc" 0238 0239 and if that doesn't work, try 0240 0241 ./configure CC="cc -nodtk" 0242 0243 On Solaris, don't put '/usr/ucb' early in your 'PATH'. This 0244 directory contains several dysfunctional programs; working variants of 0245 these programs are available in '/usr/bin'. So, if you need '/usr/ucb' 0246 in your 'PATH', put it _after_ '/usr/bin'. 0247 0248 On Haiku, software installed for all users goes in '/boot/common', 0249 not '/usr/local'. It is recommended to use the following options: 0250 0251 ./configure --prefix=/boot/common 0252 0253 Specifying the System Type 0254 ========================== 0255 0256 There may be some features 'configure' cannot figure out 0257 automatically, but needs to determine by the type of machine the package 0258 will run on. Usually, assuming the package is built to be run on the 0259 _same_ architectures, 'configure' can figure that out, but if it prints 0260 a message saying it cannot guess the machine type, give it the 0261 '--build=TYPE' option. TYPE can either be a short name for the system 0262 type, such as 'sun4', or a canonical name which has the form: 0263 0264 CPU-COMPANY-SYSTEM 0265 0266 where SYSTEM can have one of these forms: 0267 0268 OS 0269 KERNEL-OS 0270 0271 See the file 'config.sub' for the possible values of each field. If 0272 'config.sub' isn't included in this package, then this package doesn't 0273 need to know the machine type. 0274 0275 If you are _building_ compiler tools for cross-compiling, you should 0276 use the option '--target=TYPE' to select the type of system they will 0277 produce code for. 0278 0279 If you want to _use_ a cross compiler, that generates code for a 0280 platform different from the build platform, you should specify the 0281 "host" platform (i.e., that on which the generated programs will 0282 eventually be run) with '--host=TYPE'. 0283 0284 Sharing Defaults 0285 ================ 0286 0287 If you want to set default values for 'configure' scripts to share, 0288 you can create a site shell script called 'config.site' that gives 0289 default values for variables like 'CC', 'cache_file', and 'prefix'. 0290 'configure' looks for 'PREFIX/share/config.site' if it exists, then 0291 'PREFIX/etc/config.site' if it exists. Or, you can set the 0292 'CONFIG_SITE' environment variable to the location of the site script. 0293 A warning: not all 'configure' scripts look for a site script. 0294 0295 Defining Variables 0296 ================== 0297 0298 Variables not defined in a site shell script can be set in the 0299 environment passed to 'configure'. However, some packages may run 0300 configure again during the build, and the customized values of these 0301 variables may be lost. In order to avoid this problem, you should set 0302 them in the 'configure' command line, using 'VAR=value'. For example: 0303 0304 ./configure CC=/usr/local2/bin/gcc 0305 0306 causes the specified 'gcc' to be used as the C compiler (unless it is 0307 overridden in the site shell script). 0308 0309 Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an 0310 Autoconf limitation. Until the limitation is lifted, you can use this 0311 workaround: 0312 0313 CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash 0314 0315 'configure' Invocation 0316 ====================== 0317 0318 'configure' recognizes the following options to control how it 0319 operates. 0320 0321 '--help' 0322 '-h' 0323 Print a summary of all of the options to 'configure', and exit. 0324 0325 '--help=short' 0326 '--help=recursive' 0327 Print a summary of the options unique to this package's 0328 'configure', and exit. The 'short' variant lists options used only 0329 in the top level, while the 'recursive' variant lists options also 0330 present in any nested packages. 0331 0332 '--version' 0333 '-V' 0334 Print the version of Autoconf used to generate the 'configure' 0335 script, and exit. 0336 0337 '--cache-file=FILE' 0338 Enable the cache: use and save the results of the tests in FILE, 0339 traditionally 'config.cache'. FILE defaults to '/dev/null' to 0340 disable caching. 0341 0342 '--config-cache' 0343 '-C' 0344 Alias for '--cache-file=config.cache'. 0345 0346 '--quiet' 0347 '--silent' 0348 '-q' 0349 Do not print messages saying which checks are being made. To 0350 suppress all normal output, redirect it to '/dev/null' (any error 0351 messages will still be shown). 0352 0353 '--srcdir=DIR' 0354 Look for the package's source code in directory DIR. Usually 0355 'configure' can determine that directory automatically. 0356 0357 '--prefix=DIR' 0358 Use DIR as the installation prefix. *note Installation Names:: for 0359 more details, including other options available for fine-tuning the 0360 installation locations. 0361 0362 '--no-create' 0363 '-n' 0364 Run the configure checks, but stop before creating any output 0365 files. 0366 0367 'configure' also accepts some other, not widely useful, options. Run 0368 'configure --help' for more details.