diff --git a/GraspPlanning/GraspQuality/GraspEvaluationPoseUncertainty.h b/GraspPlanning/GraspQuality/GraspEvaluationPoseUncertainty.h
index fa15a481700f688a39dc275ec23c90115f191493..3ec365c674af532f7eb8b0751fb09610d3cad094 100644
--- a/GraspPlanning/GraspQuality/GraspEvaluationPoseUncertainty.h
+++ b/GraspPlanning/GraspQuality/GraspEvaluationPoseUncertainty.h
@@ -30,8 +30,6 @@
 #include <string>
 #include <vector>
 
-#include <boost/shared_ptr.hpp>
-
 namespace GraspStudio
 {
 
diff --git a/VirtualRobot/IK/ConstrainedHierarchicalIK.h b/VirtualRobot/IK/ConstrainedHierarchicalIK.h
index 5353fd778e2d1c4f1d656a80a504b56748c4d647..d161607db687782f5b69c043513dab0f51e09d4a 100644
--- a/VirtualRobot/IK/ConstrainedHierarchicalIK.h
+++ b/VirtualRobot/IK/ConstrainedHierarchicalIK.h
@@ -26,7 +26,6 @@
 #include "VirtualRobot/IK/ConstrainedIK.h"
 #include "VirtualRobot/IK/HierarchicalIK.h"
 
-#include <boost/shared_ptr.hpp>
 
 namespace VirtualRobot
 {
diff --git a/VirtualRobot/IK/ConstrainedIK.h b/VirtualRobot/IK/ConstrainedIK.h
index 13a894bf2d3f088296230ab7736a81014503c960..af3978c0fde6224d6091313352065131cde52b6e 100644
--- a/VirtualRobot/IK/ConstrainedIK.h
+++ b/VirtualRobot/IK/ConstrainedIK.h
@@ -27,7 +27,6 @@
 #include "VirtualRobot/Robot.h"
 
 #include <vector>
-#include <boost/shared_ptr.hpp>
 
 namespace VirtualRobot
 {
diff --git a/VirtualRobot/IK/ConstrainedOptimizationIK.h b/VirtualRobot/IK/ConstrainedOptimizationIK.h
index af10cd104bd15c6340fedf45bcc8dd59dbf8050c..c6543764b7c5be9e2f47177c7fcf0f42d6826adf 100644
--- a/VirtualRobot/IK/ConstrainedOptimizationIK.h
+++ b/VirtualRobot/IK/ConstrainedOptimizationIK.h
@@ -27,8 +27,6 @@
 #include "VirtualRobot/IK/ConstrainedIK.h"
 #include "VirtualRobot/IK/Constraint.h"
 
-#include <boost/shared_ptr.hpp>
-
 namespace nlopt
 {
     class opt;
diff --git a/VirtualRobot/IK/ConstrainedStackedIK.h b/VirtualRobot/IK/ConstrainedStackedIK.h
index 33332938d6e15d0ea480868c97d499401d326ea2..12a0f1cb76a59e3cf15652bad53b1ef36c4ea8d4 100644
--- a/VirtualRobot/IK/ConstrainedStackedIK.h
+++ b/VirtualRobot/IK/ConstrainedStackedIK.h
@@ -27,8 +27,6 @@
 #include "VirtualRobot/IK/JacobiProvider.h"
 #include "VirtualRobot/IK/StackedIK.h"
 
-#include <boost/shared_ptr.hpp>
-
 namespace VirtualRobot
 {
     class VIRTUAL_ROBOT_IMPORT_EXPORT ConstrainedStackedIK : public ConstrainedIK, public boost::enable_shared_from_this<ConstrainedStackedIK>
diff --git a/VirtualRobot/IK/Constraint.h b/VirtualRobot/IK/Constraint.h
index 2bbeafaf9cbc25ef10f14c08f330d33b8b145a17..807ad4d881bc16aeb9e9aa3bc9f2ca8786b5e2c6 100644
--- a/VirtualRobot/IK/Constraint.h
+++ b/VirtualRobot/IK/Constraint.h
@@ -25,8 +25,6 @@
 #include "VirtualRobot/VirtualRobot.h"
 #include "VirtualRobot/IK/JacobiProvider.h"
 
-#include <boost/shared_ptr.hpp>
-
 class SoSeparator;
 
 namespace VirtualRobot
diff --git a/VirtualRobot/IK/constraints/BalanceConstraint.h b/VirtualRobot/IK/constraints/BalanceConstraint.h
index 5ac06b0976c6e8c562e1cda61553aebbc538d4cb..be1846ef1016613a5ab9fc21720029c48897176d 100644
--- a/VirtualRobot/IK/constraints/BalanceConstraint.h
+++ b/VirtualRobot/IK/constraints/BalanceConstraint.h
@@ -28,8 +28,6 @@
 #include <VirtualRobot/IK/CoMIK.h>
 #include <VirtualRobot/IK/SupportPolygon.h>
 
-#include <boost/shared_ptr.hpp>
-
 class SoSeparator;
 class SoNode;
 
diff --git a/VirtualRobot/IK/constraints/CoMConstraint.h b/VirtualRobot/IK/constraints/CoMConstraint.h
index 8134c8f0dca92acb3b01e8df42e40f5e822b2818..856931508f2b814c7aeb0848ef97e0c532e65137 100644
--- a/VirtualRobot/IK/constraints/CoMConstraint.h
+++ b/VirtualRobot/IK/constraints/CoMConstraint.h
@@ -27,8 +27,6 @@
 #include "VirtualRobot/IK/Constraint.h"
 #include "VirtualRobot/IK/CoMIK.h"
 
-#include <boost/shared_ptr.hpp>
-
 namespace VirtualRobot
 {
     class VIRTUAL_ROBOT_IMPORT_EXPORT CoMConstraint : public Constraint, public boost::enable_shared_from_this<CoMConstraint>
diff --git a/VirtualRobot/IK/constraints/JointLimitAvoidanceConstraint.h b/VirtualRobot/IK/constraints/JointLimitAvoidanceConstraint.h
index a1a978aa1b313e8db59dfe47c3dd5257ce67becc..83e1521e2478864acf0f874e2b5622de7b299e0e 100644
--- a/VirtualRobot/IK/constraints/JointLimitAvoidanceConstraint.h
+++ b/VirtualRobot/IK/constraints/JointLimitAvoidanceConstraint.h
@@ -25,7 +25,6 @@
 
 #include "VirtualRobot/IK/constraints/ReferenceConfigurationConstraint.h"
 
-#include <boost/shared_ptr.hpp>
 
 namespace VirtualRobot
 {
diff --git a/VirtualRobot/IK/constraints/OrientationConstraint.h b/VirtualRobot/IK/constraints/OrientationConstraint.h
index 224999f34e293e9f14ec6bf6cdcfc026b51c8a37..2341be55487b791cd49d6172f851907898f42179 100644
--- a/VirtualRobot/IK/constraints/OrientationConstraint.h
+++ b/VirtualRobot/IK/constraints/OrientationConstraint.h
@@ -27,8 +27,6 @@
 #include "VirtualRobot/IK/Constraint.h"
 #include "VirtualRobot/IK/DifferentialIK.h"
 
-#include <boost/shared_ptr.hpp>
-
 namespace VirtualRobot
 {
     class VIRTUAL_ROBOT_IMPORT_EXPORT OrientationConstraint : public Constraint, public boost::enable_shared_from_this<OrientationConstraint>
diff --git a/VirtualRobot/IK/constraints/PoseConstraint.h b/VirtualRobot/IK/constraints/PoseConstraint.h
index cc30b6dce0fa5c65e860ccdc4509f3af3e7a6f9d..8b59a0240e94b8c4dfaddc442d273d786f7a5d6a 100644
--- a/VirtualRobot/IK/constraints/PoseConstraint.h
+++ b/VirtualRobot/IK/constraints/PoseConstraint.h
@@ -27,8 +27,6 @@
 #include "VirtualRobot/IK/Constraint.h"
 #include "VirtualRobot/IK/DifferentialIK.h"
 
-#include <boost/shared_ptr.hpp>
-
 namespace VirtualRobot
 {
     class VIRTUAL_ROBOT_IMPORT_EXPORT PoseConstraint : public Constraint, public boost::enable_shared_from_this<PoseConstraint>
diff --git a/VirtualRobot/IK/constraints/PositionConstraint.h b/VirtualRobot/IK/constraints/PositionConstraint.h
index 09670086e702ab354d0387b6bda943cb8e3c3571..accfd43211085660664aa6c6796f48bc0e84f8f8 100644
--- a/VirtualRobot/IK/constraints/PositionConstraint.h
+++ b/VirtualRobot/IK/constraints/PositionConstraint.h
@@ -27,8 +27,6 @@
 #include "VirtualRobot/IK/Constraint.h"
 #include "VirtualRobot/IK/DifferentialIK.h"
 
-#include <boost/shared_ptr.hpp>
-
 namespace VirtualRobot
 {
     class VIRTUAL_ROBOT_IMPORT_EXPORT PositionConstraint : public Constraint, public boost::enable_shared_from_this<PositionConstraint>
diff --git a/VirtualRobot/IK/constraints/ReferenceConfigurationConstraint.h b/VirtualRobot/IK/constraints/ReferenceConfigurationConstraint.h
index ef0b1a6b0cc983ff2abd71cbdb4a4c018e62bc17..d33a50e47166627402a659ab79f3d35d8027661f 100644
--- a/VirtualRobot/IK/constraints/ReferenceConfigurationConstraint.h
+++ b/VirtualRobot/IK/constraints/ReferenceConfigurationConstraint.h
@@ -25,8 +25,6 @@
 
 #include "VirtualRobot/IK/Constraint.h"
 
-#include <boost/shared_ptr.hpp>
-
 namespace VirtualRobot
 {
     class VIRTUAL_ROBOT_IMPORT_EXPORT ReferenceConfigurationConstraint : public Constraint, public boost::enable_shared_from_this<ReferenceConfigurationConstraint>
diff --git a/VirtualRobot/IK/constraints/TSRConstraint.h b/VirtualRobot/IK/constraints/TSRConstraint.h
index 7f636a45971113e545d19bba2eb68d060c164a89..29b68185aaabfb0968c2aec49a4f89e9dba590d6 100644
--- a/VirtualRobot/IK/constraints/TSRConstraint.h
+++ b/VirtualRobot/IK/constraints/TSRConstraint.h
@@ -26,8 +26,6 @@
 #include "VirtualRobot/IK/Constraint.h"
 #include "VirtualRobot/IK/DifferentialIK.h"
 
-#include <boost/shared_ptr.hpp>
-
 namespace VirtualRobot
 {
     class VIRTUAL_ROBOT_IMPORT_EXPORT TSRConstraint : public Constraint, public boost::enable_shared_from_this<TSRConstraint>
diff --git a/VirtualRobot/Import/Legacy/COLLADA/ColladaIO.h b/VirtualRobot/Import/Legacy/COLLADA/ColladaIO.h
index f2a004b45763cb460730f33601bf358d51f03e2b..f0818239b27c88f1100072fd5ab7e2e11e58bc5c 100644
--- a/VirtualRobot/Import/Legacy/COLLADA/ColladaIO.h
+++ b/VirtualRobot/Import/Legacy/COLLADA/ColladaIO.h
@@ -10,7 +10,6 @@
 #include <VirtualRobot/Nodes/RobotNodePrismaticFactory.h>
 #include <VirtualRobot/Nodes/PositionSensor.h>
 #include "ColladaParser.h"
-#include <boost/shared_ptr.hpp>
 #include <VirtualRobot/Visualization/TriMeshModel.h>
 #include <Eigen/Core>
 #include <Eigen/Geometry>
diff --git a/VirtualRobot/Import/Legacy/COLLADA/ColladaIterators.h b/VirtualRobot/Import/Legacy/COLLADA/ColladaIterators.h
index 3022227a9bc799ada1beb3c951b5841b85e6f599..f412c665126de18a1ec06e5b99fe79c46fa32a4e 100644
--- a/VirtualRobot/Import/Legacy/COLLADA/ColladaIterators.h
+++ b/VirtualRobot/Import/Legacy/COLLADA/ColladaIterators.h
@@ -23,8 +23,10 @@
 
 #pragma once
 
-#include <boost/iterator/iterator_facade.hpp>
 
+#ifndef Q_MOC_RUN
+#include <boost/iterator/iterator_facade.hpp>
+#endif
 //namespace VirtualRobot {
 
 template <class T>
diff --git a/VirtualRobot/Import/Legacy/COLLADA/ColladaParser.h b/VirtualRobot/Import/Legacy/COLLADA/ColladaParser.h
index a5b254b204204dcdd94fd1811f3b81695270f464..c8c0a768efe2609a245ed4eb8059ae30645acc45 100644
--- a/VirtualRobot/Import/Legacy/COLLADA/ColladaParser.h
+++ b/VirtualRobot/Import/Legacy/COLLADA/ColladaParser.h
@@ -25,12 +25,14 @@
 #include <1.5/dom/domCOLLADA.h>
 #include <1.5/dom/domInstance_kinematics_scene.h>
 #include <1.5/dom/domTechnique.h>
-#include <boost/foreach.hpp>
 #include "ColladaIterators.h"
+#ifndef Q_MOC_RUN
+#include <boost/foreach.hpp>
 #include <boost/range/adaptors.hpp>
 #include <boost/range/algorithm.hpp>
 #include <boost/lambda/lambda.hpp>
 #include <boost/shared_ptr.hpp>
+#endif
 #include <ostream>
 #include "../VirtualRobotImportExport.h"
 
diff --git a/VirtualRobot/Robot.h b/VirtualRobot/Robot.h
index 656bcf25205f1faca2c8c8248c77420482a996c7..8a8cef7bae5f88a5c62955a20c321a94bc4a2fb1 100644
--- a/VirtualRobot/Robot.h
+++ b/VirtualRobot/Robot.h
@@ -28,7 +28,6 @@
 #include "Nodes/RobotNode.h"
 #include "Nodes/RobotNodeRevolute.h"
 #include "Nodes/ConditionedLock.h"
-#include <boost/pointer_cast.hpp>
 
 #include <string>
 #include <map>
diff --git a/VirtualRobot/math/MathForwardDefinitions.h b/VirtualRobot/math/MathForwardDefinitions.h
index 9f20b79b388d8c080c2ff04fd987338828772344..6aa15dc5c5c6894c3929e580ec55fd1aa4651ad2 100644
--- a/VirtualRobot/math/MathForwardDefinitions.h
+++ b/VirtualRobot/math/MathForwardDefinitions.h
@@ -24,7 +24,9 @@
 //scale intern sizes to milimeters
 #define HAPTIC_EXPLORATION_SCALE 40
 
+#ifndef Q_MOC_RUN // workaround for some bug in some QT/boost versions
 #include <boost/shared_ptr.hpp>
+#endif
 #include <Eigen/Dense>
 #include <stdexcept>
 #include <vector>