Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt	(revision 53)
+++ CMakeLists.txt	(working copy)
@@ -48,7 +48,7 @@
 
 LINK_DIRECTORIES(${CMAKE_LIBRARY_PATH})
 
-LINK_LIBRARIES(osg osgUtil osgViewer osgText osgDB osgGA)
+LINK_LIBRARIES(osg osgUtil osgViewer osgText osgDB osgGA OpenThreads)
 
 ADD_LIBRARY(osgHUD SHARED ${SRC_FILES} ${HEADER_FILES})
 
@@ -80,3 +80,9 @@
 ADD_SUBDIRECTORY(examples/osghudlabel)
 ADD_SUBDIRECTORY(examples/osghudtable)
 ADD_SUBDIRECTORY(examples/osghudframe)
+
+IF (WIN32)
+    TARGET_LINK_LIBRARIES(osgHUD opengl32.lib)
+    ADD_DEFINITIONS(-DOSG_LIBRARY)
+    INSTALL(TARGETS osgHUD RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
+ENDIF (WIN32)
Index: include/osgHUD/Util
===================================================================
--- include/osgHUD/Util	(revision 53)
+++ include/osgHUD/Util	(working copy)
@@ -50,7 +50,7 @@
 OSG_EXPORT osg::Camera* createOrthoCamera  (double, double, bool = false);
 
 template <typename T>
-class OSG_EXPORT UIObjectParent {
+class UIObjectParent {
 public:
 	typedef T                               object_type;
 	typedef osg::ref_ptr<object_type>       refptr_type;
Index: src/Widget.cpp
===================================================================
--- src/Widget.cpp	(revision 53)
+++ src/Widget.cpp	(working copy)
@@ -290,7 +290,9 @@
 }
 
 bool Widget::isPaddingUniform() const {
-	return _padLeft == _padRight == _padTop == _padBottom;
+	return _padLeft == _padRight &&
+           _padLeft == _padTop &&
+           _padLeft == _padBottom;
 }
 
 }
Index: src/Window.cpp
===================================================================
--- src/Window.cpp	(revision 53)
+++ src/Window.cpp	(working copy)
@@ -359,15 +359,15 @@
 }
 
 bool Window::defaultConditionalMove(const Window* w, const WindowManager* wm) {
-	return wm->getMouseKeysDown() & osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON;
+	return (wm->getMouseKeysDown() & osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON) != 0;
 }
 
 bool Window::defaultConditionalRotate(const Window* w, const WindowManager* wm) {
-	return wm->getMouseKeysDown() & osgGA::GUIEventAdapter::MIDDLE_MOUSE_BUTTON;
+	return (wm->getMouseKeysDown() & osgGA::GUIEventAdapter::MIDDLE_MOUSE_BUTTON) != 0;
 }
 
 bool Window::defaultConditionalScale(const Window* w, const WindowManager* wm) {
-	return wm->getMouseKeysDown() & osgGA::GUIEventAdapter::RIGHT_MOUSE_BUTTON;
+	return (wm->getMouseKeysDown() & osgGA::GUIEventAdapter::RIGHT_MOUSE_BUTTON) != 0;
 }
 
 bool Window::mouseDrag(double x, double y, const WindowManager* wm) {
