2021-01-21 19:56:21 +00:00
# Build / Install Instructions
2019-09-27 00:46:26 +00:00
2021-01-21 19:56:21 +00:00
## Install on all platforms using vcpkg
2019-09-27 00:46:26 +00:00
You can download and install assimp using the [vcpkg ](https://github.com/Microsoft/vcpkg/ ) dependency manager:
```bash
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
vcpkg install assimp
```
The assimp port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please [create an issue or pull request ](https://github.com/Microsoft/vcpkg ) on the vcpkg repository.
2021-01-21 19:56:21 +00:00
## Install on Ubuntu
You can install the Asset-Importer-Lib via apt:
```
2022-06-28 15:48:06 +00:00
sudp apt-get update
sudo apt-get install libassimp-dev
2021-01-21 19:56:21 +00:00
```
## Install pyassimp
You need to have pip installed:
```
pip install pyassimp
```
2019-09-27 00:46:26 +00:00
## Manual build instructions
### Install CMake
2018-11-25 19:56:28 +00:00
Asset-Importer-Lib can be build for a lot of different platforms. We are using cmake to generate the build environment for these via cmake. So you have to make sure that you have a working cmake-installation on your system. You can download it at https://cmake.org/ or for linux install it via
2019-04-10 15:06:00 +00:00
```bash
2018-11-25 19:56:28 +00:00
sudo apt-get install cmake
```
2018-08-10 20:39:35 +00:00
2019-09-27 00:46:26 +00:00
### Get the source
2018-10-06 11:18:14 +00:00
Make sure you have a working git-installation. Open a command prompt and clone the Asset-Importer-Lib via:
2019-04-10 15:06:00 +00:00
```bash
2018-10-06 11:18:14 +00:00
git clone https://github.com/assimp/assimp.git
```
2021-01-21 19:56:21 +00:00
### Build from source:
```bash
cd assimp
cmake CMakeLists.txt
cmake --build .
```
2018-10-06 11:18:14 +00:00
2019-09-27 00:46:26 +00:00
### Build instructions for Windows with Visual-Studio
2018-10-06 11:18:14 +00:00
First you have to install Visual-Studio on your windows-system. You can get the Community-Version for free here: https://visualstudio.microsoft.com/de/downloads/
To generate the build environment for your IDE open a command prompt, navigate to your repo and type:
2019-04-10 15:06:00 +00:00
```bash
cmake CMakeLists.txt
2018-10-06 11:18:14 +00:00
```
2018-11-25 19:56:28 +00:00
This will generate the project files for the visual studio. All dependencies used to build Asset-IMporter-Lib shall be part of the repo. If you want to use you own zlib.installation this is possible as well. Check the options for it.
2018-08-10 20:39:35 +00:00
2019-09-27 00:46:26 +00:00
### Build instructions for Windows with UWP
2019-04-10 15:45:30 +00:00
See < https: / / stackoverflow . com / questions / 40803170 / cmake-uwp-using-cmake-to-build-universal-windows-app >
2018-10-06 11:18:14 +00:00
2019-09-27 00:46:26 +00:00
### Build instructions for Linux / Unix
2018-11-25 19:16:49 +00:00
Open a terminal and got to your repository. You can generate the makefiles and build the library via:
2018-10-06 11:18:14 +00:00
2019-04-10 15:06:00 +00:00
```bash
2018-10-06 11:18:14 +00:00
cmake CMakeLists.txt
make -j4
```
2018-11-25 19:16:49 +00:00
The option -j descripes the number of parallel processes for the build. In this case make will try to use 4 cores for the build.
If you want to use a IDE for linux you can try QTCreator for instance.
2018-10-06 11:18:14 +00:00
2019-09-27 00:46:26 +00:00
### Build instructions for MinGW
2019-04-10 14:07:24 +00:00
Older versions of MinGW's compiler (e.g. 5.1.0) do not support the -mbig_obj flag
required to compile some of assimp's files, especially for debug builds.
Version 7.3.0 of g++-mingw-w64 & gcc-mingw-w64 appears to work.
2019-04-10 13:29:21 +00:00
Please see [CMake Cross Compiling ](https://cmake.org/cmake/help/latest/manual/cmake-toolchains.7.html#cross-compiling ) for general information on CMake Toolchains.
2019-04-10 16:42:19 +00:00
Some users have had success building assimp using MinGW on Linux using [polly ](https://github.com/ruslo/polly/ ).
The following toolchain, which is not maintained by assimp, seems to work on Linux: [linux-mingw-w64-gnuxx11.cmake ](https://github.com/ruslo/polly/blob/master/linux-mingw-w64-gnuxx11.cmake )
2019-04-10 13:29:21 +00:00
The following toolchain may or may not be helpful for building assimp using MinGW on Windows (untested):
[mingw-cxx17.cmake ](https://github.com/ruslo/polly/blob/master/mingw-cxx17.cmake )
2019-04-10 14:07:24 +00:00
Besides the toolchain, compilation should be the same as for Linux / Unix.
2019-04-10 13:29:21 +00:00
2019-09-27 00:46:26 +00:00
### CMake build options
2018-10-06 11:18:14 +00:00
The cmake-build-environment provides options to configure the build. The following options can be used:
2022-05-03 19:24:34 +00:00
- **ASSIMP_HUNTER_ENABLED (default OFF)**: Enable Hunter package manager support.
- **BUILD_SHARED_LIBS (default ON)**: Generation of shared libs (dll for windows, so for Linux). Set this to OFF to get a static lib.
- **ASSIMP_BUILD_FRAMEWORK (default OFF, MacOnly)**: Build package as Mac OS X Framework bundle.
- **ASSIMP_DOUBLE_PRECISION (default OFF)**: All data will be stored as double values.
- **ASSIMP_OPT_BUILD_PACKAGES (default OFF)**: Set to ON to generate CPack configuration files and packaging targets.
- **ASSIMP_ANDROID_JNIIOSYSTEM (default OFF)**: Android JNI IOSystem support is active.
- **ASSIMP_NO_EXPORT (default OFF)**: Disable Assimp's export functionality.
- **ASSIMP_BUILD_ZLIB (default OFF)**: Build our own zlib.
- **ASSIMP_BUILD_ALL_EXPORTERS_BY_DEFAULT (default ON)**: Build Assimp with all exporter senabled.
- **ASSIMP_BUILD_ALL_IMPORTERS_BY_DEFAULT (default ON)**: Build Assimp with all importer senabled.
- **ASSIMP_BUILD_ASSIMP_TOOLS (default ON)**: If the supplementary tools for Assimp are built in addition to the library.
- **ASSIMP_BUILD_SAMPLES (default OFF)**: If the official samples are built as well (needs Glut).
- **ASSIMP_BUILD_TESTS (default ON)**: If the test suite for Assimp is built in addition to the library.
- **ASSIMP_COVERALLS (default OFF)**: Enable this to measure test coverage.
- **ASSIMP_INSTALL (default ON)**: Install Assimp library. Disable this if you want to use Assimp as a submodule.
- **ASSIMP_WARNINGS_AS_ERRORS (default ON)**: Treat all warnings as errors.
- **ASSIMP_ASAN (default OFF)**: Enable AddressSanitizer.
- **ASSIMP_UBSAN (default OFF)**: Enable Undefined Behavior sanitizer.
- **ASSIMP_BUILD_DOCS (default OFF)**: Build documentation using Doxygen. OBSOLETE, see https://github.com/assimp/assimp-docs
- **ASSIMP_INJECT_DEBUG_POSTFIX (default ON)**: Inject debug postfix in .a/.so/.lib/.dll lib names
- **ASSIMP_IGNORE_GIT_HASH (default OFF)**: Don't call git to get the hash.
- **ASSIMP_INSTALL_PDB (default ON)**: Install MSVC debug files.
- **USE_STATIC_CRT (default OFF)**: Link against the static MSVC runtime libraries.
- **ASSIMP_BUILD_DRACO (default OFF)**: Build Draco libraries. Primarily for glTF.
- **ASSIMP_BUILD_ASSIMP_VIEW (default ON, if DirectX found, OFF otherwise)**: Build Assimp view tool (requires DirectX).