====== Compiling with Windows ====== other compiling instructions: [[compile_instructions|Overview]] -- [[compile_linux|Linux]] -- [[compile_bsd|BSD]] -- [[compile_macos|MacOS]] ==== Requirements ==== Wolfpack requires Python 2.4.x or Python 2.6.x and Nokia's Qt 4.1.x or later (4.6.1 is recommended). If you wish to use MySQL, you will also need to download MySQL itself before compiling, since it comes with header files and libraries required to activate MySQL support on Wolfpack. Make sure that the ''QTDIR'' enviroment variables is properly set. ''QTDIR'' should point to your qt folder, that is, where ''$QTDIR/include'', ''$QTDIR/lib'' and ''$QTDIR/bin/qmake'' can be found. The examples shown here will also assume that $''QTDIR/bin'' is in your ''$PATH''. === Installing Qt === For compiling Qt yourself please follow up the specific instructions from the Qt Project. Otherwise just download Qt SDK (LPGL) from https://qt-project.org/downloads and install it. Don't forget to set the paths mentioned above. ==== Generating Makefiles ==== Go to the folder containing wolfpack folders. Inside the build folder you should find the configure script (configure2.py) The configure script will try to locate the headers and libraries required in your system and pass them to qmake to generate a makefile. Some options can be enabled/disabled from arguments passed to configure, check ''%%configure2.py --help%%'' for details on them. To run the script, call it with ''configure2.py''. Eventually you might have to specify the full Python path (usually ''C:\Python24''), in case that folder isn't in your PATH environment variable. C:\Python24\python configure.py Now change to the path ''../boost'' and do ''mingw32-make''. After compiling change back to ''../build'' and compile Wolfpack server by typing ''mingw32-make''. That's it. PS: You can also run ''make'', ''nmake'' or ''mingw-make'' depending on your compiler. We recommend ''mingw32-make'' as it comes with Qt. ==== Compiler Specific Notes ==== Unfortunally, different compilers have some sligtly differences in make's name, or requires additional steps. === MinGW === Python doesn't come with the import library file for linking with MingW, so you will have to generate it before running the configure script. To do so, you will need to download ''pexports.exe'' (pexports 0.42h). Extract it somewhere in your PATH, as a suggestion, use MingW's bin folder (usually ''C:\mingw\bin''). Locate ''python24.dll'', usually it's in ''C:\winnt\system32'' or ''C:\windows\system32''. Go to ''C:\Python24\libs'' (or the equivalent to your installation) and run ''pexports c:\WINNT\system32\python24.dll > python24.def'' to build a list of exported functions, then ''%%dlltool --dllname python24.dll --def python24.def --output-lib libpython24.a%%'' to build the import library file we need: cd \Python24\libs pexports c:\WINNT\system32\python24.dll > python24.def dlltool --dllname python24.dll --def python24.def --output-lib libpython24.a If you want to enable MySQL support, you will have to take similar steps to build an import library to mysql.