1 HEAD- Building and Installing;;
3 HEAD++ Supported Platforms;;
5 NoBug has been developed on linux, using gcc. It should be possible to port
6 it to any other POSIX compliant operating system. Most platform
7 specific things are kept optional, but some things need to be
8 rewritten for the target platform. Currently Linux with a gcc that conforms to
9 C99 is supported for both 32 and 64 bit architectures.
10 One gcc extentsion that is used (token pasting of varadic macros) may prevent
11 portability to other compilers as some compilers don't support such extensions.
12 If you encounter such a problem, contact the NoBug author to implement
17 `---------------`---------------`---------------`--------------------------
18 Platform Compiler State Notes
19 ---------------------------------------------------------------------------
20 Linux x86_64 gcc 4.3.2 supported Reference Platform
21 Linux x86 gcc supported
22 MacOS X gcc works Valgrind problems
23 OpenSolaris gcc mostly Builds, but target check fails
25 ---------------------------------------------------------------------------
27 NoBug has no mandatory dependencies on other software and libraries,
28 some things such as valgrind support are optional and should be automatially
29 detected during the build, i.e., when ./configure is called.
32 HEAD== Release Tarballs;;
34 Releases are available on:
35 http://www.pipapo.org/nobug-releases/
37 Gpg signed tarballs are being used for distribution. The first step involves
38 checking the signature:
40 $ gpg nobug-VERSION.tar.gz.gpg
42 This will produce a nobug-VERSION.tar.gz and report if the signature could be
45 Since they are built with gnu autotools, the usual build and install procedure
48 $ tar xzvf nobug-VERSION.tar.gz
54 $ make check # optional, run the testsuite
55 $ make install # depending on distribution and setup, do this as root
58 HEAD== Development Version via git;;
59 You can obtain a development version by using git. The git repository can be
61 `git://git.pipapo.org/nobug` or mirrored at repo.or.cz
62 `git://repo.or.cz/nobug.git`.
64 Clone the git repository by:
66 $ git clone git://git.pipapo.org/nobug
68 After cloning the repository, then bootstrap the autotools:
71 $ autoreconf -i # creates the configure file
73 Then the usual `cd build && ../configure && make && make install` (as above) will work.
74 Careful users may run `make check` to run a testsuite before installing.
77 HEAD++ Keeping Git Up To Date;;
79 To update to any new revision, just enter the nobug dir and
83 After that you can build as above (cd build && ../configure && make && make install).
84 This default pull will update from the 'master' branch which is meant to be an on-going
85 stable version (latest release + bugfixes).
87 HEAD-- What Is Installed;;
89 Currently, NoBug installs the following:
91 * A single nobug.h headerfile. Include this in your code.
92 * Static libraries. Statically link these to your application:
93 - `libnobug.a` for singlethreaded programs.
94 - `libnobugmt.a` for multithreaded programs.
95 * Dynamic Libraries. Dynamically link these to your application:
96 - `libnobug.so` for singlethreaded programs.
97 - `libnobugmt.so` for multithreaded programs.
98 - associated libtool descriptors (`libnobug*.la`)
99 * Pkgconfig control files:
100 - `nobug.pc` for singlethreaded programs.
101 - `nobugmt.pc` for multithreaded programs.
102 * The `nobug_rbdump` utility to inspect NoBug ringbuffers.
105 PARA Generating This Documentation;;
107 $ make nobug_manual.txt
108 $ ascidoc -a toc nobug_manual.txt