diff --git a/src/GaussianEMRestraint.cpp b/src/GaussianEMRestraint.cpp
index a1e973bd065834b7e13a74d792a236f91098baba..b79788c2f139c67cceecea520b09e6281aae1e0f 100755
--- a/src/GaussianEMRestraint.cpp
+++ b/src/GaussianEMRestraint.cpp
@@ -15,6 +15,7 @@
 #include <IMP/isd/isd_config.h>
 #include <IMP/isd/Scale.h>
 #include <IMP/isd/em_utilities.h>
+#include <boost/math/special_functions/gamma.hpp>
 
 IMPBAYESIANEM_BEGIN_NAMESPACE
 
@@ -98,7 +99,7 @@ void GaussianEMRestraint::compute_initial_scores() {
   }
   cached_score_term_ += (3.0 + dsize_) / 2.0 * std::log(2);
   cached_score_term_ += 0.5 * std::log(IMP::PI);
-  cached_score_term_ -= std::lgamma(dsize_ / 2.0);
+  cached_score_term_ -= boost::math::lgamma(dsize_ / 2.0);
 
   // precalculate the self-mm score and initialize
   for (int i = 0; i < msize_; i++) {