123 lines
2.7 KiB
ReStructuredText
123 lines
2.7 KiB
ReStructuredText
Compile And Install
|
|
====================
|
|
|
|
libccd contains several mechanisms for compiling and installing.
|
|
Using a simple Makefile, using autotools, and using CMake.
|
|
|
|
|
|
1. Using Makefile
|
|
------------------
|
|
Directory ``src/`` contains Makefile that should contain everything needed for compilation and installation:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ cd src/
|
|
$ make
|
|
$ make install
|
|
|
|
Library libccd is by default compiled in double precision of floating point
|
|
numbers - you can change this by options ``USE_SINGLE``/``USE_DOUBLE``, i.e.:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ make USE_SINGLE=yes
|
|
|
|
will compile library in single precision.
|
|
Installation directory can be changed by options ``PREFIX``, ``INCLUDEDIR``
|
|
and ``LIBDIR``.
|
|
For more info type '``make help``'.
|
|
|
|
|
|
2. Using Autotools
|
|
-------------------
|
|
libccd also contains support for autotools:
|
|
Generate configure script etc.:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ ./bootstrap
|
|
|
|
Create new ``build/`` directory:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ mkdir build && cd build
|
|
|
|
Run configure script:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ ../configure
|
|
|
|
Run make and make install:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ make && make install
|
|
|
|
configure script can change the way libccd is compiled and installed, most
|
|
significant option is ``--enable-double-precision`` which enables double
|
|
precision (single is default in this case).
|
|
|
|
3. Using CMake
|
|
---------------
|
|
|
|
To build using ``make``:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ mkdir build && cd build
|
|
$ cmake -G "Unix Makefiles" ..
|
|
$ make && make install
|
|
|
|
To build using ``ninja``:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ mkdir build && cd build
|
|
$ cmake -G Ninja ..
|
|
$ ninja && ninja install
|
|
|
|
Other build tools may be using by specifying a different generator. For example:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ cmake -G Xcode ..
|
|
|
|
.. code-block:: batch
|
|
|
|
> cmake -G "Visual Studio 14 2015" ..
|
|
|
|
To compile using double precision, set the ``ENABLE_DOUBLE_PRECISION`` option:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ mkdir build && cd build
|
|
$ cmake -G "Unix Makefiles" -DENABLE_DOUBLE_PRECISION=ON ..
|
|
$ make && make install
|
|
|
|
To build libccd as a shared library, set the ``BUILD_SHARED_LIBS`` option:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ mkdir build && cd build
|
|
$ cmake -G "Unix Makefiles" -DBUILD_SHARED_LIBS=ON ..
|
|
$ make && make install
|
|
|
|
To build the test suite, set the ``BUILD_TESTING`` option:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ mkdir build && cd build
|
|
$ cmake -G "Unix Makefiles" -DBUILD_TESTING=ON ..
|
|
$ make && make test
|
|
|
|
|
|
The installation directory may be changed by specifying the ``CMAKE_INSTALL_PREFIX`` variable:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ mkdir build && cd build
|
|
$ cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/path/to/install ..
|
|
$ make && make install
|