Index: src/UIElements/CommandLineUI/CommandLineParser_validate.cpp
===================================================================
--- src/UIElements/CommandLineUI/CommandLineParser_validate.cpp	(revision 694d841455d8fa728517b6d9113d7a59531897be)
+++ src/UIElements/CommandLineUI/CommandLineParser_validate.cpp	(revision d5240d74405d4ff10e28079491467650d6a36d25)
@@ -19,4 +19,6 @@
 
 #include "Helpers/MemDebug.hpp"
+
+#include <boost/version.hpp>
 
 #include <iostream>
@@ -41,5 +43,13 @@
   if (values.size() != 1) {
     std::cerr <<  "Not one vector but " << values.size() << " given " << std::endl;
+#if BOOST_VERSION < 104200
     throw boost::program_options::validation_error("Unequal to one vector given");
+#else
+    throw boost::program_options::validation_error(
+        boost::program_options::validation_error::invalid_option_value,
+        std::string("value"),
+        std::string("VectorValue")
+    );
+#endif
   }
   std::string argument(values.at(0));
@@ -59,5 +69,13 @@
   if (components.size() != 3) {
     std::cerr <<  "Specified vector does not have three components but " << components.size() << std::endl;
+#if BOOST_VERSION < 104200
     throw boost::program_options::validation_error("Specified vector does not have three components");
+#else
+    throw boost::program_options::validation_error(
+        boost::program_options::validation_error::invalid_option_value,
+        std::string("value"),
+        std::string("VectorValue")
+    );
+#endif
   }
   VV.x = boost::lexical_cast<double>(components.at(0));
@@ -75,5 +93,13 @@
   if (values.size() != 1) {
     std::cerr <<  "Not one vector but " << values.size() << " given " << std::endl;
+#if BOOST_VERSION < 104200
     throw boost::program_options::validation_error("Unequal to one vector given");
+#else
+    throw boost::program_options::validation_error(
+        boost::program_options::validation_error::invalid_option_value,
+        std::string("value"),
+        std::string("BoxValue")
+    );
+#endif
   }
   std::string argument(values.at(0));
@@ -93,5 +119,13 @@
   if (components.size() != 6) {
     std::cerr <<  "Specified vector does not have three components but " << components.size() << std::endl;
+#if BOOST_VERSION < 104200
     throw boost::program_options::validation_error("Specified symmetric box matrix does not have six components");
+#else
+    throw boost::program_options::validation_error(
+        boost::program_options::validation_error::invalid_option_value,
+        std::string("value"),
+        std::string("BoxValue")
+    );
+#endif
   }
   BV.xx = boost::lexical_cast<double>(components.at(0));
@@ -120,5 +154,21 @@
   if (values.size() != 1) {
     std::cerr <<  "Not one file but " << values.size() << " given " << std::endl;
+#if BOOST_VERSION < 104200
     throw boost::program_options::validation_error("Unequal to one file given");
+#else
+    if (values.size() == 0) {
+      throw boost::program_options::validation_error(
+          boost::program_options::validation_error::at_least_one_value_required,
+          std::string("value"),
+          std::string("boost::filesystem::path")
+      );
+    } else {
+      throw boost::program_options::validation_error(
+          boost::program_options::validation_error::multiple_values_not_allowed,
+          std::string("value"),
+          std::string("boost::filesystem::path")
+      );
+    }
+#endif
   }
   filename = values.at(0);
Index: src/UIElements/Makefile.am
===================================================================
--- src/UIElements/Makefile.am	(revision 694d841455d8fa728517b6d9113d7a59531897be)
+++ src/UIElements/Makefile.am	(revision d5240d74405d4ff10e28079491467650d6a36d25)
@@ -5,5 +5,6 @@
 AM_LDFLAGS = -ldl
 AM_CXXFLAGS = ${QT_CXXFLAGS} ${GLU_CXXFLAGS}
-
+AM_CPPFLAGS = ${BOOST_CPPFLAGS}
+ 
 VIEWSOURCE = \
   Views/View.cpp \
@@ -227,4 +228,5 @@
 QTUI_DEFS =
 
+GUI_LIBS = 
 
 
@@ -233,8 +235,10 @@
 libMolecuilderUI_includedir = $(includedir)/molecuilder-$(MOLECUILDER_API_VERSION)/Actions/
 libMolecuilderQtUI_includedir = $(includedir)/molecuilder-$(MOLECUILDER_API_VERSION)/Actions/ 
-libMolecuilderUI_LIBS = \
+libMolecuilderUI_@MOLECUILDER_API_VERSION@_la_LIBS = \
 	Actions/libMolecuilderActions-@MOLECUILDER_API_VERSION@.la
-libMolecuilderQtUI_LIBS = \
+libMolecuilderQtUI_@MOLECUILDER_API_VERSION@_la_LIBS = \
 	Actions/libMolecuilderActions-@MOLECUILDER_API_VERSION@.la
+
+libMolecuilderQtUI_@MOLECUILDER_API_VERSION@_la_LIBADD = ${QT_LIB_GUI} -lQtOpenGL ${GLU_LIBS} ${QT_LDADD}
 
 nobase_libMolecuilderUI_include_HEADERS = ${UIHEADER}
@@ -302,3 +306,3 @@
 
 	
-MOSTLYCLEANFILES = unity.cpp
+MOSTLYCLEANFILES = unity.cpp allmocs.moc.cpp
