diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6e064e681060c1a50133f1294a5ef9187d5c59ea..b7387f606d98bbac82ef64161d931f3224368c64 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -41,10 +41,9 @@ SET(PKG_CONFIG_ADDITIONAL_VARIABLES
 
 SETUP_PROJECT()
 # Search for dependencies.
-ADD_REQUIRED_DEPENDENCY("pinocchio >= 1.2.6")
 ADD_REQUIRED_DEPENDENCY("eigenpy")
+ADD_REQUIRED_DEPENDENCY("pinocchio >= 1.2.6")
 ADD_REQUIRED_DEPENDENCY("dynamic-graph >= 3.0.0")
-ADD_REQUIRED_DEPENDENCY("dynamic-graph-python >= 3.0.0")
 ADD_REQUIRED_DEPENDENCY("sot-core >= 3.0.0")
 ADD_REQUIRED_DEPENDENCY("sot-tools >= 2.0.0")
 
@@ -69,8 +68,16 @@ PKG_CONFIG_APPEND_LIBS(${LIBRARY_NAME})
 
 # Search for dependencies.
 # Boost
-SET(BOOST_COMPONENTS filesystem system unit_test_framework python)
-FINDPYTHON()
+SET(BOOST_COMPONENTS filesystem system unit_test_framework)
+
+OPTION (BUILD_PYTHON_INTERFACE "Build the python binding" ON)
+IF(BUILD_PYTHON_INTERFACE)
+  FINDPYTHON()
+  ADD_REQUIRED_DEPENDENCY("dynamic-graph-python >= 3.0.0")
+  SET(BOOST_COMPONENTS ${BOOST_COMPONENTS} python)
+  INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
+ENDIF(BUILD_PYTHON_INTERFACE)
+
 SEARCH_FOR_BOOST()
 SEARCH_FOR_EIGEN()
 
diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
index d0d241b0449dc8726b4ebda2b91c2e6f5f8fd3b3..b76b0f71e65c4fc6f316b8c41dcbc5b86a6853cc 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -1,5 +1,6 @@
-INSTALL(
-  FILES kine_romeo.py kine_romeo_small.py
-  DESTINATION ${PYTHON_SITELIB}/dynamic_graph/tutorial
-)
-
+IF(BUILD_PYTHON_INTERFACE)
+  INSTALL(
+    FILES kine_romeo.py kine_romeo_small.py
+    DESTINATION ${PYTHON_SITELIB}/dynamic_graph/tutorial
+    )
+ENDIF(BUILD_PYTHON_INTERFACE)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 3c29c101d38575ef00917e83d843919ed369efc8..c8df282a9224158bbfca8758ac22a8a4ea167544 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -50,12 +50,14 @@ FOREACH(lib ${plugins})
   INSTALL(TARGETS ${libname} DESTINATION ${DYNAMIC_GRAPH_PLUGINDIR})
 
   # build python submodule
-  STRING(REPLACE - _ PYTHON_LIBRARY_NAME ${lib})
+  IF(BUILD_PYTHON_INTERFACE)
+    STRING(REPLACE - _ PYTHON_LIBRARY_NAME ${lib})
 
-  DYNAMIC_GRAPH_PYTHON_MODULE("sot/dynamics_pinocchio/${PYTHON_LIBRARY_NAME}"
-    ${libname}
-    sot-dynamic-pinocchio-${PYTHON_LIBRARY_NAME}-wrap
-    )
+    DYNAMIC_GRAPH_PYTHON_MODULE("sot/dynamics_pinocchio/${PYTHON_LIBRARY_NAME}"
+      ${libname}
+      sot-dynamic-pinocchio-${PYTHON_LIBRARY_NAME}-wrap
+      )
+  ENDIF(BUILD_PYTHON_INTERFACE)
   UNSET({libname})
 ENDFOREACH(lib)
 
@@ -73,10 +75,12 @@ INSTALL(TARGETS ${LIBRARY_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR})
 TARGET_LINK_LIBRARIES(dp-dynamic ${LIBRARY_NAME})
 
 # Install empty __init__.py files in intermediate directories.
-INSTALL(FILES
-  ${CMAKE_CURRENT_SOURCE_DIR}/dynamic_graph/sot/dynamics_pinocchio/__init__.py
-  ${CMAKE_CURRENT_SOURCE_DIR}/dynamic_graph/sot/dynamics_pinocchio/humanoid_robot.py
-  ${CMAKE_CURRENT_SOURCE_DIR}/dynamic_graph/sot/dynamics_pinocchio/tools.py
-  ${CMAKE_CURRENT_SOURCE_DIR}/dynamic_graph/sot/dynamics_pinocchio/parser.py
-  DESTINATION ${PYTHON_SITELIB}/dynamic_graph/sot/dynamics_pinocchio
-  )
+IF(BUILD_PYTHON_INTERFACE)
+  INSTALL(FILES
+    ${CMAKE_CURRENT_SOURCE_DIR}/dynamic_graph/sot/dynamics_pinocchio/__init__.py
+    ${CMAKE_CURRENT_SOURCE_DIR}/dynamic_graph/sot/dynamics_pinocchio/humanoid_robot.py
+    ${CMAKE_CURRENT_SOURCE_DIR}/dynamic_graph/sot/dynamics_pinocchio/tools.py
+    ${CMAKE_CURRENT_SOURCE_DIR}/dynamic_graph/sot/dynamics_pinocchio/parser.py
+    DESTINATION ${PYTHON_SITELIB}/dynamic_graph/sot/dynamics_pinocchio
+    )
+ENDIF(BUILD_PYTHON_INTERFACE)
diff --git a/unitTesting/CMakeLists.txt b/unitTesting/CMakeLists.txt
index 3247e7fb1617a7abdfff27135d3c36511b4c264c..e45601685e2bb7f317551584fba7a5cc3adbeb2d 100644
--- a/unitTesting/CMakeLists.txt
+++ b/unitTesting/CMakeLists.txt
@@ -52,8 +52,6 @@ FOREACH(test ${tests})
   SET(EXECUTABLE_NAME "${test}_exe")
   ADD_EXECUTABLE(${EXECUTABLE_NAME}
     ${test}.cpp)
-  MESSAGE("PYTHON_INCLUDE_PATH: ${PYTHON_INCLUDE_PATH}")
-  INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
 
   TARGET_LINK_LIBRARIES(${EXECUTABLE_NAME}
     dp-zmpreffromcom
@@ -70,7 +68,9 @@ FOREACH(test ${tests})
   PKG_CONFIG_USE_DEPENDENCY(${EXECUTABLE_NAME} pinocchio)
   PKG_CONFIG_USE_DEPENDENCY(${EXECUTABLE_NAME} sot-core)
   PKG_CONFIG_USE_DEPENDENCY(${EXECUTABLE_NAME} dynamic-graph)
-  PKG_CONFIG_USE_DEPENDENCY(${EXECUTABLE_NAME} dynamic-graph-python)
+  IF(BUILD_PYTHON_INTERFACE)
+    PKG_CONFIG_USE_DEPENDENCY(${EXECUTABLE_NAME} dynamic-graph-python)
+  ENDIF(BUILD_PYTHON_INTERFACE)
 
   IF(${test}_plugins_dependencies)
     ADD_DEPENDENCIES(${EXECUTABLE_NAME} "${${test}_plugins_dependencies}")