summaryrefslogtreecommitdiff
path: root/INSTALL
blob: 1e30812fd606de1235be984fec4e9cb44cc009c6 (plain)
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

Short overview for those who don't read manuals:

This software is compiled to binary form using a build system based on the
CMake framework. Therefore, the requirements to build this package are:

 - cmake 2.4.3 or newer (available from http://www.cmake.org or maybe as a
   package in your Linux distribution)
 - GNU make
 - working GCC compiler environment
 - maybe additional requirements for your operating system, see
   doc/platforms/... and FAQ.
   Recommended: glibc (Linux standard) or GNU libiconv

COMPILATION:

Run: make

INSTALLATION:

Run: make install

To customize the target paths, some variables can be appended to this line:
PREFIX=/opt/cdrkit/latest (default: CMake preset, e.g. /usr/local)
MANSUBDIR=man (default: share/man)

TROUBLESHOOTING:

Problem: Linking error.
Solution: Look for missing dependencies. If you installed additional libraries
in non-system paths, they may have a conflict with the system libraries which
are already installed. Make sure that the linker gets the right ones, those
that belong to the headers. For example, if you installed libmagic and libiconv
into /usr/local/{include,lib} and your compiler or linker have different
defaults (eg. they use /usr/lib, /usr/include or intermix them), then you can
set CFLAGS and LDFLAGS vars to override the system defaults, assumed by cmake.
Example: 
(AIX5l, /usr/lib is default lib dir but /usr/local/include is preferred by gcc
for headers), command:
    make clean
    make CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib
(cleaning is important to rerun tests. Alternatively, remove build/CMakeCache*)

Problem: Library not found
Solution: Install the library and its development files. Depending on the
system distribution they can be shipped in different packages. Install them
all and make sure that the development files match the version of the main
library package.

Problem: Library not found during configuration though it's installed
Solution: Install the development files, see above for details.

Problem: Library not found though it's installed with dev files
Solution: Install the development files, see above for details. If you use
non-standard paths not known/searched by Cmake and/or your compiler, pass the
location of the headers in CFLAGS and the libraries via LDFLAGS. See examples
above.

Problem: None of those hints helps
Solution: Examine the following files:
    build/CMakeFiles/CMakeFiles/CMakeOutput.log
    build/CMakeFiles/CMakeOutput.log
and look for failed commands. Some checks are expected to fail if the platform
does not provide a certain feature, others must not fail. Look the failing
check and use THE FORCE to find related problems and solutions.