diff --git a/Mesh/meshPartition.cpp b/Mesh/meshPartition.cpp
index c371736a0bb9defbd6c3d985b6bcd50a6623b247..ddcd14e326d0acc74747f7c0608c93ea7e72a6a6 100644
--- a/Mesh/meshPartition.cpp
+++ b/Mesh/meshPartition.cpp
@@ -1146,4 +1146,5 @@ template void MakeGraphDIM<3, GModel::riter, GModel::fiter>
  const GModel::fiter beginBE, const GModel::fiter endBE,
  Graph &graph, BoElemGrVec *const boElemGrVec);
 
+
 #endif
diff --git a/Mesh/multiscalePartition.cpp b/Mesh/multiscalePartition.cpp
index 90906d8fd5efc527dd214780dd299eddf3ad2e81..a772b78accf5187a017f451cabab20b7ee37c2e1 100644
--- a/Mesh/multiscalePartition.cpp
+++ b/Mesh/multiscalePartition.cpp
@@ -2,7 +2,7 @@
 #include "GmshConfig.h"
 #include "GmshDefines.h"
 #include "meshPartition.h"
-
+#include "MElement.h"
 
 static bool zeroGenus (std::vector<MElement *> &elements){
 
@@ -73,8 +73,7 @@ multiscalePartition::multiscalePartition (std::vector<MElement *> &elements,
 }
 
 void multiscalePartition::partition(partitionLevel & level){
-
-
+#if defined(HAVE_METIS) || defined(HAVE_CHACO)
   PartitionMeshElements(level.elements, options);
 
   std::vector<std::vector<MElement*> > regions(options.num_partitions);
@@ -102,7 +101,7 @@ void multiscalePartition::partition(partitionLevel & level){
 
 }
 
-
+#endif
 }
 
 int multiscalePartition::assembleAllPartitions(){