diff --git a/src/amdis/CMakeLists.txt b/src/amdis/CMakeLists.txt
index 706ce91d9481db4232090b5ad6295ae0645adc1c..d13f729273157a36b29e8265059b81940b22935d 100644
--- a/src/amdis/CMakeLists.txt
+++ b/src/amdis/CMakeLists.txt
@@ -8,7 +8,7 @@ dune_library_add_sources(amdis SOURCES
     Initfile.cpp
     InitfileParser.cpp
     ProblemInstatBase.cpp
-    # ProblemInstat.cpp
+    ProblemInstat.cpp
     ProblemStat.cpp
     StandardProblemIteration.cpp
 )
diff --git a/src/amdis/ProblemInstat.cpp b/src/amdis/ProblemInstat.cpp
index 40f64261bd1e76c88fefe86aa5277927eb682ebe..afbf06e06377ed0241700ceefbdf0e16c03aa03d 100644
--- a/src/amdis/ProblemInstat.cpp
+++ b/src/amdis/ProblemInstat.cpp
@@ -1,10 +1,10 @@
-#define AMDIS_NO_EXTERN_PROBLEMINSTAT
+#include "config.h"
 #include "ProblemInstat.hpp"
-#undef AMDIS_NO_EXTERN_PROBLEMINSTAT
-
 
 namespace AMDiS
 {
   // explicit template instatiation
-  // template class ProblemInstat<YaspGridBasis<2,1>>;
+  template class ProblemInstat<YaspGridBasis<2,1>>;
+  template class ProblemInstat<YaspGridBasis<2,2>>;
+
 } // end namespace AMDiS
diff --git a/src/amdis/ProblemInstat.hpp b/src/amdis/ProblemInstat.hpp
index a45f0c0d78c03ef458b92a588fe39290deaabcdf..f90404351b507ed5eebabed11904126e089350f2 100644
--- a/src/amdis/ProblemInstat.hpp
+++ b/src/amdis/ProblemInstat.hpp
@@ -110,6 +110,10 @@ namespace AMDiS
     return {name, prob, initialProb};
   }
 
+  // mark template as explicitly instantiated in cpp file
+  extern template class ProblemInstat<YaspGridBasis<2,1>>;
+  extern template class ProblemInstat<YaspGridBasis<2,2>>;
+
 } // end namespace AMDiS
 
 #include "ProblemInstat.inc.hpp"
diff --git a/src/amdis/ProblemStat.cpp b/src/amdis/ProblemStat.cpp
index 691db3259d3e93732950d44600f1e8bcd54129ed..fabf702f1661afeacaedd0a3bdc654148f836d0f 100644
--- a/src/amdis/ProblemStat.cpp
+++ b/src/amdis/ProblemStat.cpp
@@ -1,9 +1,10 @@
-#define AMDIS_NO_EXTERN_PROBLEMSTAT
+#include "config.h"
 #include "ProblemStat.hpp"
-#undef AMDIS_NO_EXTERN_PROBLEMSTAT
-
 
 namespace AMDiS
 {
+  // explicit template instatiation
+  template class ProblemStat<YaspGridBasis<2,1>>;
+  template class ProblemStat<YaspGridBasis<2,2>>;
 
 } // end namespace AMDiS
diff --git a/src/amdis/ProblemStat.hpp b/src/amdis/ProblemStat.hpp
index 050ef6af48ea3c6ef80ddb579ec5c93e9a677e4a..b4578993f8c93b557b0b8ac862bd0943c15da194 100644
--- a/src/amdis/ProblemStat.hpp
+++ b/src/amdis/ProblemStat.hpp
@@ -499,7 +499,10 @@ namespace AMDiS
     return {name, grid, globalBasis};
   }
 
+  // mark templates as explicitly instantiated in cpp file
+  extern template class ProblemStat<YaspGridBasis<2,1>>;
+  extern template class ProblemStat<YaspGridBasis<2,2>>;
+
 } // end namespace AMDiS
 
 #include "ProblemStat.inc.hpp"
-