diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7897409fd65d0427d6e9957b6e70e64d17f3158a..56fe98c766d73a5db6c0a2839f5194606ef208f3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -31,6 +31,9 @@ SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)
 
 SETUP_PROJECT()
 
+# Trigger dependency to jrl-mal
+ADD_REQUIRED_DEPENDENCY("jrl-mal >= 1.8.0")
+
 # Add configuration headers for plug-ins.
 GENERATE_CONFIGURATION_HEADER(
   ${HEADER_DIR} config-tracer.hh DG_TRACER tracer_EXPORTS)
diff --git a/include/dynamic-graph/linear-algebra.h b/include/dynamic-graph/linear-algebra.h
index 0ec3dd1d089a25f6a64859160668ab89de55844e..62cc76dfb8067294cb78f14cf40c281b40258361 100644
--- a/include/dynamic-graph/linear-algebra.h
+++ b/include/dynamic-graph/linear-algebra.h
@@ -18,11 +18,12 @@
 #ifndef DYNAMIC_GRAPH_LINEAR_ALGEBRA_H
 #define DYNAMIC_GRAPH_LINEAR_ALGEBRA_H
 
-#include <boost/numeric/ublas/vector.hpp>
+#include <jrl/mal/boost.hh>
 #include <boost/numeric/ublas/matrix.hpp>
+
 namespace dynamicgraph {
-  typedef ::boost::numeric::ublas::vector<double> Vector;
-  typedef ::boost::numeric::ublas::matrix<double> Matrix;
+  typedef maal::boost::Vector Vector;
+  typedef maal::boost::Matrix Matrix;
 }
 
 #endif //DYNAMIC_GRAPH_LINEAR_ALGEBRA_H
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 3c3a28f3df49dc7f3d93e3f1fd1b8b15912d39ca..55548914ee5843a3ed5509fae297f3f467184092 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -54,6 +54,8 @@ ADD_LIBRARY(${LIBRARY_NAME}
 
 SET_TARGET_PROPERTIES(${LIBRARY_NAME} PROPERTIES SOVERSION ${PROJECT_VERSION})
 
+PKG_CONFIG_USE_DEPENDENCY(${LIBRARY_NAME} jrl-mal)
+
 IF (UNIX)
   TARGET_LINK_LIBRARIES(${LIBRARY_NAME} dl pthread)
 ENDIF (UNIX)