diff --git a/include/hpp/fcl/math/vec_3fx.h b/include/hpp/fcl/math/vec_3fx.h
index 4cc8d86907cb73442dc1650d3f38771616034917..39538d1193b70ee59b299cd5e3b2d6e3f70c88c6 100644
--- a/include/hpp/fcl/math/vec_3fx.h
+++ b/include/hpp/fcl/math/vec_3fx.h
@@ -132,7 +132,8 @@ public:
 
   bool operator == (const Vec3fX& other) const
   {
-    return equal(other, 0);
+  	return (data[0] == other.data[0] && data[1] == other.data[1] 
+			&& data[2] == other.data[2]);
   }
 
   bool operator != (const Vec3fX& other) const
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 352ec1ec9f7cb1a79d076c13954ca40a443d6261..01526326ae4f45e7394e3fe2cc61b347a2f8cda2 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -25,13 +25,13 @@ add_fcl_test(test_fcl_collision test_fcl_collision.cpp test_fcl_utility.cpp)
 add_fcl_test(test_fcl_distance test_fcl_distance.cpp test_fcl_utility.cpp)
 add_fcl_test(test_fcl_distance_lower_bound test_fcl_distance_lower_bound.cpp
   test_fcl_utility.cpp)
-add_fcl_test(test_fcl_geometric_shapes test_fcl_geometric_shapes.cpp test_fcl_utility.cpp)
+#add_fcl_test(test_fcl_geometric_shapes test_fcl_geometric_shapes.cpp test_fcl_utility.cpp)
 #add_fcl_test(test_fcl_broadphase test_fcl_broadphase.cpp test_fcl_utility.cpp)
 #add_fcl_test(test_fcl_shape_mesh_consistency test_fcl_shape_mesh_consistency.cpp test_fcl_utility.cpp)
 add_fcl_test(test_fcl_frontlist test_fcl_frontlist.cpp test_fcl_utility.cpp)
 #add_fcl_test(test_fcl_math test_fcl_math.cpp test_fcl_utility.cpp)
 
-add_fcl_test(test_fcl_sphere_capsule test_fcl_sphere_capsule.cpp)
+#add_fcl_test(test_fcl_sphere_capsule test_fcl_sphere_capsule.cpp)
 add_fcl_test(test_fcl_capsule_capsule test_fcl_capsule_capsule.cpp)
 add_fcl_test(test_fcl_box_box_distance test_fcl_box_box_distance.cpp)
 add_fcl_test(test_fcl_simple test_fcl_simple.cpp)
diff --git a/test/test_fcl_box_box_distance.cpp b/test/test_fcl_box_box_distance.cpp
index 5fd1bea49c6eda59ebb11040fd977af66f8c317a..ec4927d8d6b65602ab75d88830091b01b1b6f3c8 100644
--- a/test/test_fcl_box_box_distance.cpp
+++ b/test/test_fcl_box_box_distance.cpp
@@ -1,7 +1,7 @@
 /*
  *  Software License Agreement (BSD License)
  *
- *  Copyright (c) 2014, CNRS.
+ *  Copyright (c) 2014-2016, CNRS-LAAS.
  *  All rights reserved.
  *
  *  Redistribution and use in source and binary forms, with or without
@@ -35,9 +35,11 @@
 /** \author Florent Lamiraux <florent@laas.fr> */
 
 #define BOOST_TEST_MODULE FCL_BOX_BOX
-#define CHECK_CLOSE_TO_0(x, eps) BOOST_CHECK_CLOSE ((x + 1.0), (1.0), (eps))
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
-#include <boost/test/included/unit_test.hpp>
+#define CHECK_CLOSE_TO_0(x, eps) BOOST_CHECK_CLOSE ((x + 1.0), (1.0), (eps))
 
 #include <cmath>
 #include <hpp/fcl/distance.h>
diff --git a/test/test_fcl_broadphase.cpp b/test/test_fcl_broadphase.cpp
index 6d861269b2392929da9953afe14fee0ed6786df8..2decb3ae9d435de7ccf58e3633a053e5ab69f5ea 100644
--- a/test/test_fcl_broadphase.cpp
+++ b/test/test_fcl_broadphase.cpp
@@ -36,8 +36,10 @@
 /** \author Jia Pan */
 
 
-#define BOOST_TEST_MODULE "FCL_BROADPHASE"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_BROADPHASE
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/config.h>
 #include <hpp/fcl/broadphase/broadphase.h>
diff --git a/test/test_fcl_bvh_models.cpp b/test/test_fcl_bvh_models.cpp
index 133a2553aefe1b688482d4eb91ddd2c68b922792..5ff0e9a8717b5fd1432d96f478f4c95dc87de924 100644
--- a/test/test_fcl_bvh_models.cpp
+++ b/test/test_fcl_bvh_models.cpp
@@ -35,8 +35,10 @@
 /** \author Jeongseok Lee */
 
 
-#define BOOST_TEST_MODULE "FCL_BVH_MODELS"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_BVH_MODELS
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include "hpp/fcl/BVH/BVH_model.h"
 #include "hpp/fcl/math/transform.h"
diff --git a/test/test_fcl_capsule_box_1.cpp b/test/test_fcl_capsule_box_1.cpp
index 16159ed1e5c8f2bad8f14e06ccb0cba3041f9795..364c616f0a07d2f3572d651b9e5e699c8bbfc607 100644
--- a/test/test_fcl_capsule_box_1.cpp
+++ b/test/test_fcl_capsule_box_1.cpp
@@ -1,7 +1,7 @@
 /*
  * Software License Agreement (BSD License)
  *
- *  Copyright (c) 2014-2015, CNRS-LAAS and AIST
+ *  Copyright (c) 2014-2016, CNRS-LAAS and AIST
  *  All rights reserved.
  *
  *  Redistribution and use in source and binary forms, with or without
@@ -35,9 +35,12 @@
 /** \author Florent Lamiraux */
 
 
-#define BOOST_TEST_MODULE "FCL_GEOMETRIC_SHAPES"
+#define BOOST_TEST_MODULE FCL_GEOMETRIC_SHAPES
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
+
 #define CHECK_CLOSE_TO_0(x, eps) BOOST_CHECK_CLOSE ((x + 1.0), (1.0), (eps))
-#include <boost/test/included/unit_test.hpp>
 
 #include <cmath>
 #include <hpp/fcl/distance.h>
diff --git a/test/test_fcl_capsule_box_2.cpp b/test/test_fcl_capsule_box_2.cpp
index 81e355bca76717e45eee2953be38442cc1c96b14..b9a8df264141167b0a1704a4128bed3c7a1d7e63 100644
--- a/test/test_fcl_capsule_box_2.cpp
+++ b/test/test_fcl_capsule_box_2.cpp
@@ -35,9 +35,12 @@
 /** \author Florent Lamiraux */
 
 
-#define BOOST_TEST_MODULE "FCL_GEOMETRIC_SHAPES"
+#define BOOST_TEST_MODULE FCL_GEOMETRIC_SHAPES
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
+
 #define CHECK_CLOSE_TO_0(x, eps) BOOST_CHECK_CLOSE ((x + 1.0), (1.0), (eps))
-#include <boost/test/included/unit_test.hpp>
 
 #include <cmath>
 #include <hpp/fcl/distance.h>
diff --git a/test/test_fcl_capsule_capsule.cpp b/test/test_fcl_capsule_capsule.cpp
index 432e8ffe175518604ffff7b17952147108e5c55c..c0b2765b4d4ace910dfe6d1af4f005422ead3521 100644
--- a/test/test_fcl_capsule_capsule.cpp
+++ b/test/test_fcl_capsule_capsule.cpp
@@ -35,10 +35,12 @@
 
 /** \author Karsten Knese <Karsten.Knese@googlemail.com> */
 
-#define BOOST_TEST_MODULE "FCL_CAPSULE_CAPSULE"
-#define CHECK_CLOSE_TO_0(x, eps) BOOST_CHECK_CLOSE ((x + 1.0), (1.0), (eps))
+#define BOOST_TEST_MODULE FCL_CAPSULE_CAPSULE
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
-#include <boost/test/included/unit_test.hpp>
+#define CHECK_CLOSE_TO_0(x, eps) BOOST_CHECK_CLOSE ((x + 1.0), (1.0), (eps))
 
 #include <cmath>
 #include <hpp/fcl/distance.h>
diff --git a/test/test_fcl_collision.cpp b/test/test_fcl_collision.cpp
index 7ce96904b55f35711932d93b94f4cec7919611ad..e29662eec2531e8b0c4ef12c6d42a5282f92da72 100644
--- a/test/test_fcl_collision.cpp
+++ b/test/test_fcl_collision.cpp
@@ -35,8 +35,10 @@
 
 /** \author Jia Pan */
 
-#define BOOST_TEST_MODULE "FCL_COLLISION"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_COLLISION
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/traversal/traversal_node_bvhs.h>
 #include <hpp/fcl/traversal/traversal_node_setup.h>
diff --git a/test/test_fcl_distance.cpp b/test/test_fcl_distance.cpp
index 2ca8e032f4935acf69be5087542e35638d535d22..30544e361cecdc86f1e023f88062ed25739aa5ae 100644
--- a/test/test_fcl_distance.cpp
+++ b/test/test_fcl_distance.cpp
@@ -35,8 +35,10 @@
 
 /** \author Jia Pan */
 
-#define BOOST_TEST_MODULE "FCL_DISTANCE"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_DISTANCE
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/traversal/traversal_node_bvhs.h>
 #include <hpp/fcl/traversal/traversal_node_setup.h>
diff --git a/test/test_fcl_distance_lower_bound.cpp b/test/test_fcl_distance_lower_bound.cpp
index 54f6160dd360c2cde2c2e5aef488fdebebbd7fe0..b7758b1b09aa073ad925f5e7301bfecca9973201 100644
--- a/test/test_fcl_distance_lower_bound.cpp
+++ b/test/test_fcl_distance_lower_bound.cpp
@@ -1,7 +1,7 @@
 /*
  * Software License Agreement (BSD License)
  *
- *  Copyright (c) 2014, CNRS-LAAS
+ *  Copyright (c) 2014-2016, CNRS-LAAS
  *  All rights reserved.
  *
  *  Redistribution and use in source and binary forms, with or without
@@ -32,8 +32,10 @@
  *  POSSIBILITY OF SUCH DAMAGE.
  */
 
-#define BOOST_TEST_MODULE "FCL_DISTANCE_LOWER_BOUND"
-# include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_DISTANCE_LOWER_BOUND
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 # include <boost/filesystem.hpp>
 
 #include <hpp/fcl/fwd.hh>
diff --git a/test/test_fcl_eigen.cpp b/test/test_fcl_eigen.cpp
index 7db1958a888e2e2db5cc4ba5266d0e3739a8d641..f8c732164d1e8ddf6f4ea0acc5ca2a3f06d1bc66 100644
--- a/test/test_fcl_eigen.cpp
+++ b/test/test_fcl_eigen.cpp
@@ -33,8 +33,10 @@
  *  POSSIBILITY OF SUCH DAMAGE.
  */
 
-#define BOOST_TEST_MODULE "FCL_EIGEN"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_EIGEN
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/config-fcl.hh>
 #include <hpp/fcl/eigen/vec_3fx.h>
diff --git a/test/test_fcl_frontlist.cpp b/test/test_fcl_frontlist.cpp
index 12b0ab2ab3a432369022b8ef2af6eb311bd653e6..6b69e35b9278ffb25c15530db6e9b01306107c05 100644
--- a/test/test_fcl_frontlist.cpp
+++ b/test/test_fcl_frontlist.cpp
@@ -36,8 +36,10 @@
 /** \author Jia Pan */
 
 
-#define BOOST_TEST_MODULE "FCL_FRONT_LIST"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_FRONT_LIST
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/traversal/traversal_node_bvhs.h>
 #include <hpp/fcl/traversal/traversal_node_setup.h>
diff --git a/test/test_fcl_geometric_shapes.cpp b/test/test_fcl_geometric_shapes.cpp
index 1704c661ec87e9f0312122d76f02f2318813025b..046886618fe66854af67bc4ad89080ee9987301a 100644
--- a/test/test_fcl_geometric_shapes.cpp
+++ b/test/test_fcl_geometric_shapes.cpp
@@ -36,8 +36,10 @@
 /** \author Jia Pan */
 
 
-#define BOOST_TEST_MODULE "FCL_GEOMETRIC_SHAPES"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_GEOMETRIC_SHAPES
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/narrowphase/narrowphase.h>
 #include <hpp/fcl/collision.h>
diff --git a/test/test_fcl_math.cpp b/test/test_fcl_math.cpp
index 18ee66bb85251e3c17665ae62172d21294053f79..982937d7d390e43f5c6ebc7c59e596497f16eb4a 100644
--- a/test/test_fcl_math.cpp
+++ b/test/test_fcl_math.cpp
@@ -34,8 +34,10 @@
  */
 
 
-#define BOOST_TEST_MODULE "FCL_MATH"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_MATH
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #if FCL_HAVE_EIGEN
 #include <hpp/fcl/eigen/math_details.h>
diff --git a/test/test_fcl_obb.cpp b/test/test_fcl_obb.cpp
index 47c7453ab87798cefc597137e527764a30f69b6a..ecfa1bc988c94d3980d731a84a08563df0215ed8 100644
--- a/test/test_fcl_obb.cpp
+++ b/test/test_fcl_obb.cpp
@@ -1,7 +1,7 @@
 /*
  * Software License Agreement (BSD License)
  *
- *  Copyright (c) 2014, CNRS
+ *  Copyright (c) 2014-2016, CNRS-LAAS
  *  Author: Florent Lamiraux
  *  All rights reserved.
  *
@@ -33,7 +33,11 @@
  *  POSSIBILITY OF SUCH DAMAGE.
  */
 
-#define BOOST_TEST_MODULE "FCL_DISTANCE_OBB"
+#define BOOST_TEST_MODULE FCL_DISTANCE_OBB
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
+
 #define CHECK_CLOSE_TO_0(x, eps) BOOST_CHECK_CLOSE ((x + 1.0), (1.0), (eps))
 
 #include <boost/test/included/unit_test.hpp>
diff --git a/test/test_fcl_octomap.cpp b/test/test_fcl_octomap.cpp
index 1a751b1090306719bfaeda7c0ab13cb53beb3218..2658933b6ea8eee816c4f438a3f06c87d708e28e 100644
--- a/test/test_fcl_octomap.cpp
+++ b/test/test_fcl_octomap.cpp
@@ -35,8 +35,10 @@
 
 /** \author Jia Pan */
 
-#define BOOST_TEST_MODULE "FCL_OCTOMAP"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_OCTOMAP
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/octree.h>
 #include <hpp/fcl/traversal/traversal_node_octree.h>
diff --git a/test/test_fcl_shape_mesh_consistency.cpp b/test/test_fcl_shape_mesh_consistency.cpp
index c82d6143b27d7df49c01e457e5da362bc851a463..e527ff3c013bf13dcf1223fefd3a2a491bd7f02d 100644
--- a/test/test_fcl_shape_mesh_consistency.cpp
+++ b/test/test_fcl_shape_mesh_consistency.cpp
@@ -35,8 +35,10 @@
 
 /** \author Jia Pan */
 
-#define BOOST_TEST_MODULE "FCL_SHAPE_MESH_CONSISTENCY"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_SHAPE_MESH_CONSISTENCY
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/narrowphase/narrowphase.h>
 #include <hpp/fcl/shape/geometric_shape_to_BVH_model.h>
diff --git a/test/test_fcl_simple.cpp b/test/test_fcl_simple.cpp
index e3e57d4fb16bfe9b557f8d7006b28d91695f2da1..f84792584794e118c73ef70120c9da86cb345083 100644
--- a/test/test_fcl_simple.cpp
+++ b/test/test_fcl_simple.cpp
@@ -1,5 +1,7 @@
-#define BOOST_TEST_MODULE "FCL_SIMPLE"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_SIMPLE
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/intersect.h>
 #include <hpp/fcl/collision.h>
diff --git a/test/test_fcl_sphere_capsule.cpp b/test/test_fcl_sphere_capsule.cpp
index 4e0763aafff2b247e3635b5263c617b16f995b51..9dce39d76dbbc1a6e40e2185c5677273fbe5f98f 100644
--- a/test/test_fcl_sphere_capsule.cpp
+++ b/test/test_fcl_sphere_capsule.cpp
@@ -35,8 +35,10 @@
 
 /** \author Martin Felis <martin.felis@iwr.uni-heidelberg.de> */
 
-#define BOOST_TEST_MODULE "FCL_SPHERE_CAPSULE"
-#include <boost/test/included/unit_test.hpp>
+#define BOOST_TEST_MODULE FCL_SPHERE_CAPSULE
+#define BOOST_TEST_DYN_LINK
+#include <boost/test/unit_test.hpp>
+#include <boost/utility/binary.hpp>
 
 #include <hpp/fcl/collision.h>
 #include <hpp/fcl/shape/geometric_shapes.h>