Prerequisits: - Microsoft Visual C++ 2008 Express Edition with SP1 (http://www.microsoft.com/express/vc/) or Visual C++ 2010 - Perl (cygwin perl (http://www.cygwin.com/), strawberry perl (http://strawberryperl.com) or activestate perl (http://www.activestate.com/activeperl/) ) - Python (2.5 used: http://www.python.org/) - Gnuwin32 gawk, gzip, flex, bison (and it's dependancies), sed (and it's dependancies (http://gnuwin32.sourceforge.net/) - nasm (http://nasm.sourceforge.net). Make sure the nasm directory is in your path - Make sure that the gnuwin32 binaries are in a directory path with no spaces, like 'C:\gnuwin32\bin' - Make sure the environment PATH includes the directory where the gnuwin32 binaries are - Make sure python, perl are in the environment PATH - make sure the command prompt is set for compiling with the visual studio compiler (vcvars32.bat) - When using Visual C++ 2008 define the environment variable VS2008=1 When you want to use the tools/cleantree.py script, also install svn command line client: - Download/install a command line version of svn. http://www.sliksvn.com/en/download (other versions are fine too). - Make sure that the directory where the svn.exe file is, is added to the System PATH Building freetype: - open freetype\freetype.sln in Visual C++ 2008 Express Edition or freetype\freetypevc10.sln in Visual C++ 2010 Build configurations 'Release Multithreaded' and 'Debug Multithreaded' Building openssl: - run 'perl Configure VC-WIN32' in the openssl directory - run 'ms\do_nasm.bat' in the openssl' directory - run 'nmake -f ms\nt.mak' in the openssl directory - run 'nmake DEBUG=1 -f ms\nt.mak' in the openssl directory (if you want to build the DEBUG version of vcxsrv) Building pthreads: - goto pthreads directory - run 'nmake VC-static' - run 'nmake VC-static-debug' Building mhmake - open tools\mhmake\mhmake.sln in Visual C++ 2008 Express Edition - Build the Debug and Release configurations - Copy Debug\mhmake_dbg.exe and Release\mhmake.exe to a directory in your environment PATH Add an environment variable named MHMAKECONF having as value the root directory of the sources. e.g.: set MHMAKECONF=c:\vcxsrv\trunk Building vcxsrv: - run 'mhmake MAKESERVER=1' in xorg-server directory. Currently you will get an error at the end saying it cannot find vcxsrv_dbg.lib. To solve this, rerun this command after executing the next command - run 'mhmake DEBUG=1 MAKESERVER=1' in xorg-server directory for a debugable version To build installer: - install http://nsis.sourceforge.net - run 'packageall.bat' in xorg-server\installer To clean the project tree (uses svn) go to the top directory at a command prompt and type in 'python tools\cleantree.py -r' Do this only on a source tree checked out with svn (svn co https://vcxsrv.svn.sourceforge.net/svnroot/vcxsrv/trunk).