I am Charmie

メモとログ

Windows: C++ programming environment

  1. Visual Studio 2013 for Windows Desktop Jp|En
  2. Boost pre-built binary We can select the install directory, say BOOST_DIR. I chose boost_1_55_0-msvc-12.0-64.exe because msvc-12.0 means VS2013, my PC is 64bit, and my ubuntu PC uses 1.54 (the pre-built 1.54 is up to VS 2010). With the executable, include directory: BOOST_DIR library directory: BOOST_DIR\lib64-msvc-12.0
  3. Eigen Generate Eigen.sln by running cmake and open the generated Eigen.sln as a superuser. Running only INSTALL project, the project installs all header files in "C:/Program Files/Eigen/include/eigen3". Note that there's no deed to do the above operation because Eigen is header only library.
  4. glog needed for ceres-solver. Download from github and run google-glog.sln.
  5. gflag needed for ceres-solver. Download from github, run cmake, and run gflags.sln. Running ALL_BUILD and then INSTALL projects, the header files and the generated library files are installed in include directory: C:/Program Files/gflags/Include/gflags/ library directory: C:/Program Files/gflags/Lib cmake related directory: C:/Program Files/gflags/CMake/
  6. SuiteSparse for Windows needed for ceres-solver. Download from github, run cmake, and run SuiteSparseProject.sln. Running ALL_BUILD and then INSTALL project, the header files and the generated library files are installed in library directory: SUITESPARSE_ROOT_DIR/build/install/lib64/lapack_blas_windows, SUITESPARSE_ROOT_DIR/build/install/lib64 include directory: SUITESPARSE_ROOT_DIR/build/install/include/suitesparse Note that (1) the library directories should be added to environment variables PATH, (2) SUITESPARSE_ROOT_DIR/build/install should be set as an environment variable SuiteSparse_DIR to find by FindSuiteSparse.cmake, and (3) SUITESPARSE_ROOT_DIR/cmakemodule is better to added as an environmental variable so that we can add the directory to cmake module path.
  7. CXSparse Run CXSPARSE_DIR/CXSparse/Project/CXSparse.sln and build CXSparse project.
  8. ceres-solver Run cmake and manually set some variables such as EIGEN_INCLUDE_DIR: directory where Eigen/* is located GFLAGS_INCLUDE_DIR: C:/Program Files/gflags/Include GFLAGS_LIBRARY: C:/Program Files/gflags/Lib/gflags.lib GLOG_INCLUDE_DIR: GLOG_DIR/src/windows GLOG_LIBRARY: GLOG_DIR/Release/libglog.lib CXSPARSE_INCLUDE_DIR: CXSPARSE_DIR/Include CXSPARSE_LIBRARY: CXSPARSE_DIR/Lib/CXSparse.lib