Installing GTSAM - feliyur/exercises GitHub Wiki
GTSAM (bitbucket repository) is a C++ library for information fusion in robotics, based on optimization in factor graph representation, developed at Georgia Tech.
Build from scratch
Windows
Limiting Visual Studio Parallel build
VS tends to hog system resources, using all available processors for build. To change that:
Tools ==> Options ==> Projects and Solutions
a) ==> Build and Run ==> maximum number of parallel project builds =1 (default 8)
b) ==> VC++ Project Settings ==> maximum number of concurrent compilations =1 (default 0)
GTSAM 4 alpha 2
Need to clone GTSAM develop branch, then change tag to GTSAM 4.
- In
python/CMakeLists.txt
line 3, replaceDefault
as python version with your version number (3.6). - In CMake GUI, select
BUILD_PYTHON
(this also should automatically deselectALLOW_DEPRECATED_SINCE_V4
, see docs) - In CMake GUI, select "advanced" to set boost directories
- Set
Boost_INCLUDE_DIR
to boost root (and not boost-root/boost). - Set
Boost_LIBRARY_DIR_DEBUG
andBoost_LIBRARY_DIR_RELEASE
tostage/lib
- Set
- had to add
#include <boost/serialization/array_wrapper.hpp>
to beginning of gtsam/base/Vector.h (line 26) (solution according to here)
GTSAM 3.2.1
Documentation from 03 Nov 2018. Building on Windows 10 Home, x86-64. Current GTSAM version: 3.2.1
Install file states requirements
- BOOST version 1.43 or greater
- Cmake version 2.6 or higher
Tested compilers:
- MSVC 2010, 2012
- MSVC 2013 is not yet supported because it cannot build the serialization module of Boost 1.55 (or earlier).
Building boost
- download boost 1.55.0
- Make sure you have MSVC 2012 (vs11) updated to latest version (update 5).
- See my building-boost wiki page. Need to run
b2
withruntime-link=shared
option (equivalent to/md
flag in VS).- need to download
inttypes.h
(e.g., from here) and place it somewhere visible to VS, e.g. inMicrosoft Visual Studio 11.0\VC\include
MSVC 2012 is vs11 (see mapping e.g. here). I will use the latter with boost version 1.55.0, and my existing Cmake 3.12.1 installation.
- need to download