diff --git a/qt/CMakeLists.txt b/qt/CMakeLists.txt
index acd0a0b201473019f54848af013c85a95c784131..5f341c81f5f58fc648215fa1c4179c1ec0079743 100644
--- a/qt/CMakeLists.txt
+++ b/qt/CMakeLists.txt
@@ -9,15 +9,20 @@ function ( add_python_package pkg_name )
   set ( _setup_py ${CMAKE_CURRENT_SOURCE_DIR}/setup.py )
   set ( _egg_link_dir ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR} )
   set ( _egg_link ${_egg_link_dir}/${pkg_name}.egg-link )
-  add_custom_command ( OUTPUT ${_egg_link}
+  set ( _startup_script ${_egg_link_dir}/${pkg_name} )
+  if ( WIN32 )
+    set ( _startup_script ${_startup_script}.exe )
+  endif ()
+  add_custom_command ( OUTPUT ${_egg_link} ${_startup_script}
     COMMAND ${CMAKE_COMMAND} -E env PYTHONPATH=${_egg_link_dir}
       ${PYTHON_EXECUTABLE} ${_setup_py} develop
       --install-dir ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}
       --script-dir ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/${CMAKE_CFG_INTDIR}
     WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+    DEPENDS ${_setup_py}
   )
   add_custom_target ( ${pkg_name} ALL
-    DEPENDS ${_egg_link}
+    DEPENDS ${_egg_link_dir}/${pkg_name} ${_egg_link}
   )
 endfunction ()
 
diff --git a/qt/applications/workbench/scripts/workbench.py b/qt/applications/workbench/scripts/workbench.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/qt/applications/workbench/setup.py b/qt/applications/workbench/setup.py
index 4aa20cba12502f7067f1920e75034e01926bcabe..6e3db4ad665309e688d04d56de958f5b79b2dfc1 100644
--- a/qt/applications/workbench/setup.py
+++ b/qt/applications/workbench/setup.py
@@ -21,6 +21,7 @@ from setuptools import setup
 # The most basic setup possible to be able to use setup.py develop
 setup(
     name="workbench",
+    install_requires=['mantidqt'],
     entry_points={
         'gui_scripts': [
             'workbench = workbench.app.mainwindow:main'