Warning, /education/kturtle/INSTALL.md is written in an unsupported language. File is not indexed.
0001 :zap: **These installation instructions are outdated and require a 0002 refresh**. Nowadays kturtle uses `CMake` as its build system, whereas 0003 the instructions on the doc refer to the old `autotools` build system. 0004 0005 ## Basic Installation 0006 0007 These are generic installation instructions to install kturtle from 0008 source. They are intended for developers only, as most users will want 0009 to install it from the packages available for their OS. 0010 0011 The `configure` shell script attempts to guess correct values for 0012 various system-dependent variables used during compilation. It uses 0013 those values to create a `Makefile` in each directory of the package. 0014 It may also create one or more `.h` files containing system-dependent 0015 definitions. Finally, it creates a shell script `config.status` that 0016 you can run in the future to recreate the current configuration, a file 0017 `config.cache` that saves the results of its tests to speed up 0018 reconfiguring, and a file `config.log` containing compiler output 0019 (useful mainly for debugging `configure`). 0020 0021 If you need to do unusual things to compile the package, please try 0022 to figure out how `configure` could check whether to do them, and mail 0023 diffs or instructions to the address given in the `README` so they can 0024 be considered for the next release. If at some point `config.cache` 0025 contains results you don`t want to keep, you may remove or edit it. 0026 0027 The file `configure.in` is used to create `configure` by a program 0028 called `autoconf`. You only need `configure.in` if you want to change 0029 it or regenerate `configure` using a newer version of `autoconf`. 0030 0031 The simplest way to compile this package is: 0032 0033 1. `cd` to the directory containing the package`s source code and type 0034 `./configure` to configure the package for your system. If you`re 0035 using `csh` on an old version of System V, you might need to type 0036 `sh ./configure` instead to prevent `csh` from trying to execute 0037 `configure` itself. 0038 0039 Running `configure` takes a while. While running, it prints some 0040 messages telling which features it is checking for. 0041 0042 2. Type `make` to compile the package. 0043 0044 3. Type `make install` to install the programs and any data files and 0045 documentation. 0046 0047 4. You can remove the program binaries and object files from the 0048 source code directory by typing `make clean`. 0049 0050 ## Compilers and Options 0051 0052 Some systems require unusual options for compilation or linking that 0053 the `configure` script does not know about. You can give `configure` 0054 initial values for variables by setting them in the environment. Using 0055 a Bourne-compatible shell, you can do that on the command line like 0056 this: 0057 0058 CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure 0059 0060 Or on systems that have the `env` program, you can do it like this: 0061 env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure 0062 0063 ## Compiling For Multiple Architectures 0064 0065 You can compile the package for more than one kind of computer at the 0066 same time, by placing the object files for each architecture in their 0067 own directory. To do this, you must use a version of `make` that 0068 supports the `VPATH` variable, such as GNU `make`. `cd` to the 0069 directory where you want the object files and executables to go and run 0070 the `configure` script. `configure` automatically checks for the 0071 source code in the directory that `configure` is in and in `..`. 0072 0073 If you have to use a `make` that does not supports the `VPATH` 0074 variable, you have to compile the package for one architecture at a time 0075 in the source code directory. After you have installed the package for 0076 one architecture, use `make distclean` before reconfiguring for another 0077 architecture. 0078 0079 ## Installation Names 0080 0081 By default, `make install` will install the package`s files in 0082 `/usr/local/bin`, `/usr/local/man`, etc. You can specify an 0083 installation prefix other than `/usr/local` by giving `configure` the 0084 option `--prefix=PATH`. 0085 0086 You can specify separate installation prefixes for 0087 architecture-specific files and architecture-independent files. If you 0088 give `configure` the option `--exec-prefix=PATH`, the package will use 0089 PATH as the prefix for installing programs and libraries. 0090 Documentation and other data files will still use the regular prefix. 0091 0092 If the package supports it, you can cause programs to be installed 0093 with an extra prefix or suffix on their names by giving `configure` the 0094 option `--program-prefix=PREFIX` or `--program-suffix=SUFFIX`. 0095 0096 ## Optional Features 0097 0098 Some packages pay attention to `--enable-FEATURE` options to 0099 `configure`, where FEATURE indicates an optional part of the package. 0100 They may also pay attention to `--with-PACKAGE` options, where PACKAGE 0101 is something like `gnu-as` or `x` (for the X Window System). The 0102 `README` should mention any `--enable-` and `--with-` options that the 0103 package recognizes. 0104 0105 For packages that use the X Window System, `configure` can usually 0106 find the X include and library files automatically, but if it doesn`t, 0107 you can use the `configure` options `--x-includes=DIR` and 0108 `--x-libraries=DIR` to specify their locations. 0109 0110 ## Specifying the System Type 0111 0112 There may be some features `configure` can not figure out 0113 automatically, but needs to determine by the type of host the package 0114 will run on. Usually `configure` can figure that out, but if it prints 0115 a message saying it can not guess the host type, give it the 0116 `--host=TYPE` option. TYPE can either be a short name for the system 0117 type, such as `sun4`, or a canonical name with three fields: 0118 0119 CPU-COMPANY-SYSTEM 0120 0121 See the file `config.sub` for the possible values of each field. If 0122 `config.sub` isn`t included in this package, then this package doesn`t 0123 need to know the host type. 0124 0125 If you are building compiler tools for cross-compiling, you can also 0126 use the `--target=TYPE` option to select the type of system they will 0127 produce code for and the `--build=TYPE` option to select the type of 0128 system on which you are compiling the package. 0129 0130 ## Sharing Defaults 0131 0132 If you want to set default values for `configure` scripts to share, 0133 you can create a site shell script called `config.site` that gives 0134 default values for variables like `CC`, `cache_file`, and `prefix`. 0135 `configure` looks for `PREFIX/share/config.site` if it exists, then 0136 `PREFIX/etc/config.site` if it exists. Or, you can set the 0137 `CONFIG_SITE` environment variable to the location of the site script. 0138 A warning: not all `configure` scripts look for a site script. 0139 0140 ## Operation Controls 0141 0142 `configure` recognizes the following options to control how it 0143 operates. 0144 0145 `--cache-file=FILE` 0146 Use and save the results of the tests in FILE instead of 0147 `./config.cache`. Set FILE to `/dev/null` to disable caching, for 0148 debugging `configure`. 0149 0150 `--help` 0151 Print a summary of the options to `configure`, and exit. 0152 0153 `--quiet` 0154 `--silent` 0155 `-q` 0156 Do not print messages saying which checks are being made. 0157 0158 `--srcdir=DIR` 0159 Look for the package`s source code in directory DIR. Usually 0160 `configure` can determine that directory automatically. 0161 0162 `--version` 0163 Print the version of Autoconf used to generate the `configure` 0164 script, and exit. 0165 0166 `configure` also accepts some other, not widely useful, options. 0167