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
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s