一般推薦qmake來編譯Qt應用程序, qmake用起來也很簡單,但是用scons更簡單, 更靈活。下面是一個典型的scons腳本,利用mingw來編譯一個Qt應用.
#SConstruct
qtdir = 'C:\\Programs\\Qt'
qtinc = qtdir + '\\include'
src = Glob('*.cpp')
inc_path = ';'.join((
qtinc,
qtinc + '\\QtCore',
qtinc + '\\QtGui'))
lib_path = qtdir + '\\lib'
libs = ['QtCore4', 'QtGui4', 'qtmain']
env = Environment(tools = ['mingw', 'qt'])
env.Program('MyApp', src,
CPPPATH = inc_path,
LIBPATH = lib_path,
LIBS = libs)
關于MOC: scons會自動對頭文件調用MOC(如果需要),對于cpp文件你需要使用 env.Moc().
關于UIC: 對于.ui文件,根據后綴名自動調用uic,也可以使用env.Uic().