]> git.mxchange.org Git - flightgear.git/blob - docs-mini/README.MSVC
Update VS2008 projects : use Boost 1.44.0 available in last 3rd Party archive
[flightgear.git] / docs-mini / README.MSVC
1 Use FlightGear.sln to compile fgfs executable for Win32 or x64 architectures with Visual Studio 2008.
2 Previous versions of Visual Studio are not officially supported anymore.
3
4 Precompiled librairies and headers for compiling x64 executables with VS2008 :
5 ftp://ftp.ihg.uni-duisburg.de/FlightGear/Win32/MSVC/fgfs-x64-VS90-3rdParty+OSG-20101106.zip
6
7 Precompiled librairies and headers for compiling Win32 executables with VS2008 :
8 ftp://ftp.ihg.uni-duisburg.de/FlightGear/Win32/MSVC/fgfs-win32-VS90-3rdParty+OSG-20101106.zip
9
10 The VS2008 / v9.0 project files assume the directory layout below :
11
12 Win32 build :
13  * any_directory_on_any_drive /
14       3rdParty /                 ( includes plib, fltk, zlib, libpng, libjpeg, libtiff, freetype, libsvn, gdal, ...
15          bin /
16          include /
17          lib /
18       boost_1_44_0 /
19          boost /
20          lib /
21       source /                   ( Flightgear CVS directory - It can also be renamed FlightGear or anything else
22          src /
23          projects /
24             VC90 /
25                Win32 /           ( generated at build time
26                   Debug /        ( Debug executable
27                   Release /      ( Release executable
28                FlightGear.sln    ( Main solution
29          utils /
30       install /
31          msvc90 /
32             OpenSceneGraph /     ( OSG CMake install
33                bin /
34                include /
35                lib /
36       SimGear /                  ( SimGear CVS directory
37          simgear /
38          projects /
39             VC90 /
40
41 3rdParty, boost_1_44_0 and install/msvc90 are included in the Win32 3rdParty archive.
42
43 x64 build :
44  * any_directory_on_any_drive /
45       3rdParty.x64 /             ( includes plib, fltk, zlib, libpng, libjpeg, libtiff, freetype, ...
46          bin /
47          include /
48          lib /
49       boost_1_44_0 /
50          boost /
51          lib64 /
52       source /                   ( Flightgear CVS directory - It can also be renamed FlightGear or anything else
53          src /
54          projects /
55             VC90 /
56                x64 /             ( generated at build time
57                   Debug /        ( Debug executable
58                   Release /      ( Release executable
59                FlightGear.sln    ( Main solution
60          utils /
61       install /
62          msvc90-64 /
63             OpenSceneGraph /     ( OSG CMake install
64                bin /
65                include /
66                lib /
67       SimGear /                  ( SimGear CVS directory
68          simgear /
69          projects /
70             VC90 /
71
72 3rdParty.x64, boost_1_44_0 and install/msvc90-64 are included in the x64 3rdParty archive.
73
74 Typical setup should decompose into the following steps :
75
76   1. Install Visual Studio 2008 Express (http://msdn.microsoft.com/fr-fr/express/aa975050.aspx)
77   2. Install msysGit (http://code.google.com/p/msysgit/)
78   3. Create a new directory, say D:\FGFSDevel (or anything else)
79   4. Unzip precompiled Win32 3rd party archive in it
80   5. Open a Git Bash session and cd to the new directory ( cd /d/FGFSDevel )
81   6. Get SimGear sources from Gitorious : git clone git://gitorious.org/fg/simgear.git SimGear
82   7. Get FlightGear source from Gitorious : git clone git://gitorious.org/fg/flightgear.git FlightGear
83   8. Go to D:\FGFSDevel\FlightGear\projects\VC90 and double-click on FlightGear.sln
84   9. Select the "Release" configuration
85  10. Open file D:\FGFSDevel\SimGear\simgear\version.h.in and change @VERSION@ into "2.0.0" or any current version
86  11. Save file as version.h in the same directory
87  12. Start build (usually F7)
88  13. Get the data from Gitorious too : git clone git://gitorious.org/fg/fgdata.git fgdata
89  14. Wait...
90  15. Add <any_directory_on_any_drive>/install/msvc90/OpenSceneGraph/bin and <any_directory_on_any_drive>/3rdParty/bin to your PATH environment variable
91  16. Enjoy - programs are in D:\FGFSDevel\FlightGear\projects\VC90\Win32\Release
92
93 It is also possible to compile a Debug version. This is only useful when hacking the code because 
94 a Debug version is way slower than the Release one.
95
96 The 64bit build is only available to people having the Professional edition of Visual Studio 2008. In that case, 14. above should be :
97  14. Add <any_directory_on_any_drive>/install/msvc90-64/OpenSceneGraph/bin and <any_directory_on_any_drive>/3rdParty.x64/bin to your PATH environment variable
98
99 When the manual build works, it is possible to start it from the command line. This is useful 
100 when setting up a build server or automating the process of retrieving the code and building 
101 it in a scheduled task. To do that :
102
103  1. open a command line window
104  2. execute "C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat"
105      or "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat" in a 
106      64bit environment (Vista 64-bit or Windows7 64-bit)
107      You should see : "Setting environment for using Microsoft Visual Studio 2008 x86 tools."
108      printed in the console
109  3. cd to the FlightGear project directory :
110      D:
111      cd \FGFSDevel\FlightGear\projects\VC90  (for example)
112  4. start the build with the command line below :
113      msbuild FlightGear.sln /p:Configuration=Release /m
114     or 
115      msbuild FlightGear.sln /p:Configuration=Debug /m
116
117 That's all...
118
119 Note: you may experience the error below running the msbuild command :
120 FlightGear\projects\VC90\FlightGear.sln : error MSB4018: The "ResolveVCProjectOutput" task failed unexpectedly.
121 ...(lots of additionnal messages)
122
123 In that case, remove the /m switch from the command line.