]> git.mxchange.org Git - flightgear.git/commitdiff
Initial revision.
authorcurt <curt>
Wed, 13 Sep 2000 20:57:46 +0000 (20:57 +0000)
committercurt <curt>
Wed, 13 Sep 2000 20:57:46 +0000 (20:57 +0000)
docs-mini/README.MSVC [new file with mode: 0644]

diff --git a/docs-mini/README.MSVC b/docs-mini/README.MSVC
new file mode 100644 (file)
index 0000000..1be4403
--- /dev/null
@@ -0,0 +1,221 @@
+HowTo compile FlightGear with Microsoft Visual C++ 6.0
+======================================================
+
+This HowTo is written for FlightGear 0.7.4. You might be able to
+figure out how to get any other version running by reading it as the
+steps are quite simmilar.
+
+First you need FlightGear 0.7.4 or on of the current snapshots from
+
+  ftp://ftp.flightgear.org/pub/fgfs/Source
+
+or
+
+  ftp://ftp.flightgear.org/pub/fgfs/Source/snapshots
+
+The you need the libraries that it depends on. This is SimGear 0.0.9
+and plib 1.1.11. Those libraries can be found at
+
+  ftp://ftp.flightgear.org/pub/fgfs/Source
+
+and
+
+  http://plib.sourceforge.net/
+
+Then you've got two posibilities. Either use the MSVC workspace that
+you can find at
+
+  ftp://ftp.flightgear.org/pub/fgfs/Source
+
+or create your own workspace.
+
+The premade workspace will give you a quicker start (it takes some
+time to create your own), but it will most probably be outdatet so
+that you'd have to fix it.
+
+Any wich way you choose you'll have to create the plib library now
+(i.e. before you touch anything from FGFS). You can either use the
+workspace that comes with it (most probably outdated) or create your
+own ones. The way to do that is very similar to those of the creation
+of the SimGear workspaces which is described below.
+
+If you use the premade workspace (one for SimGear and one for
+FlightGear) you'll have to open the SimGear one first and compile it,
+then the FlightGear one. After that you should be read to run FGFS.
+
+The universal approach is by creating your own workspace.
+
+Make sure that you've compiled PLIB sucessfully and that you've got in
+...\plib (I'm using ...\ for the directory where all your projects
+are. The name of the directory doesn't matter as all paths will be
+relative):
+
+  ...\plib\plib.lib
+  ...\plib\fnt.h
+  ...\plib\plib\js.h
+  ...\plib\pu.h 
+  ...\plib\sg.h
+  ...\plib\sl.h
+  ...\plib\sm.h
+  ...\plib\ssg.h
+  ...\plib\ssgKeyFlier.h
+
+(This also important when you are using the premade workspaces)
+
+Now unzip SimGear-0.0.9 into ...\SimGear (NOTE: There's no -0.0.9 at
+the end of the directory) and run MSVC. Create a new and empty
+workspace, call it 'SimGear Workspace' and make sure it'S path is
+'...\SimGear\SimGear Workspace'
+
+Then you'll have to add lots of new projects. The best way is by right
+clicking on the workspace and select 'Add new project'. Select
+Win32-Library (static) in the dialog and set the name to the first
+subdir in ...\SimGear\simgear. That'll be most probably 'bucket'. The
+path will automatically be set to ...\SimGear\bucket. Then press OK as
+often as necessary (we don't need any of the checkboxes that'll
+apear).
+
+Repeat that with all subdirectories. (If you'll open both, MSVC and
+the Explorer it'll be quite fast). With SimGear 0.0.9 you should have
+11 projects.
+
+Now do it the last time and create a project with the name 'simgear'
+and make it dependant on all other projects (through the projects
+menu).
+
+Now it's time to fill the projects. Right click on the first one and
+select the item to add new files. In the file selector select the
+files of the corresponding directory. That'll be e.g. for the 'bucket'
+project:
+
+  ...\SimGear\simgear\bucket\newbucket.cxx
+  ...\SimGear\simgear\bucket\newbucket.hxx
+
+The files for the MetaKit live in
+
+  ...\SimGear\simgear\metakit\src\
+
+and
+
+  ...\SimGear\simgear\metakit\include\
+
+NOTE: borc.h, gnuc.h, mk4dll.h and mwcw.h aren't needed and shouldn't
+be included
+
+Then add to all projects the additional search path
+'..\..\,..\..\..\,..\..\simgear\'. Do that by pressing Alt-F7,
+selecting all projects, selecting 'all configurations', selecting the
+'C/C++' tab, selecting 'preprocessor' and then add that path to the
+additional include path.
+
+The 'metakit' project needs a special addition to its include path:
+'..\..\\simgear\metakit\win,..\..\simgear\metakit\include'
+
+All projects need the additon of a few preprocessor defines. You can
+set those in the Alt-F7 dialog on the same tab where you set the
+include paths. The necessary defines are:
+
+  HAVE_WINDOWS_H and HAVE_RAND
+
+Now we are nearly ready for compiling SimGear. The only thing missing
+is the exclusion of all those test programms. These programms are
+
+  debug:  logtest.cxx
+  magvar: testmagvar.cxx
+  metar:  Drvmetar.c
+  serial: testserial.cxx
+  zlib:   example.c
+  zlib:   maketree.obj
+  zlib:   minigzip.c
+
+To exclude them, press Alt-F7, select 'all configurations' and then
+select all those files, and then exlclude those files.
+
+Last thing to do before you can compile SimGear is to press Alt-F7
+once again, select simgear and all configurations and the general
+tab. Add '..\..\' to the directory for the output files.
+
+Finally you can hit compile.
+
+When you've done everything correctly you'll have a 'simgear.lib' at
+...\SimGear\.
+
+Congratulations for completing step 1.
+
+To compile FlightGear you'll have to do quite similar steps.
+
+Make sure that FlighGear lives in ...\FlightGear, create a new and
+empty workspace named 'FlightGear Workspace' at
+'...\FlightGear\FlightGear Workspace'. Now add the projects that are
+named after the directories in ...\FlightGear\src.
+
+NOTE: Create a project named 'FDM' as well as projects named
+      'FDM Balloon', 'FDM JSBsim', ...
+NOTE: There'll even be a project named 'FDM JSBsim Filtersjb'
+NOTE: The directory 'Include' doesn't get its own project
+NOTE: The directory 'Main' is special. It's project name is 
+      'FlightGear' and it's not a win32 libraray. It's a 
+      win32-console application.
+
+Then it's time to add the files in those directories to the
+projects. (See description of SimGear for the details).
+
+Next step is to set the dependancies. 'FDM JSBsim' depends on 'FDM
+JSBsim Filtersjb', 'FDM' depends on the other 'FDM ...' projects and
+'FlightGear' depends on all other projects (but not 'FDM Ballon'
+etc. as other projects do already depend on them).
+
+NOTE: No project is allowed to depend on 'NetworkOLK' as it isn'T
+compatible with MSVC yet.
+
+Now make sure that the 'FlightGear' project is the active one (that's
+the bold one).
+
+Then add those include paths: ..\..\..\SimGear\,..\..\src,..\..\src\Include,..\..\..\,..\..\..\SimGear\simgear\metakit\include\
+
+Exclude the following files:
+
+airports:   buildsimple.cxx
+Navaids:    testnavs.cxx
+Joystick:   js_demo.cxx
+FDM JSBsim: JSBSim.cpp
+
+Wolfram Kuss (w_kuss@rz-online.de) figured out that the following
+files also have to be excluded:
+
+LaRCsim/c172_main.c
+airports/testair
+airports/genrunwas
+airports/gensimple
+the rest of airports ??
+scenery/test
+time/win32test
+time/test_event
+
+Add those preprocessor defines
+
+HAVE_WINDOWS_H, FGFS, ENABLE_PLIB_JOYSTICK
+
+Add those libraries to the linker
+
+plib.lib simgear.lib ws2_32.lib
+
+and those paths to the library paths
+
+..\..\..\plib,..\..\..\simgear
+
+Now press Alt-F7 again, select 'FlightGear' and 'all
+configurations'. Now specify your FG_ROOT/bin directory as the
+directory for the output data and FG_ROOT as the working directory.
+
+Now you are ready to compile FGFS! Have fun.
+
+NOTE: Wolfram Kuss (w_kuss@rz-online.de) Figured out that a lot of
+files are useing header files from SimGear. This leads to problems
+with using precompiled headers as long as you didn't declare all
+dependencies. He simply turned off precompiled headers.
+
+NOTE: As most developers aren't using MSVC the source code is probably
+broken. If that's the case and you know how to fix it it'll be nice if
+you could mail a bug report with it's fix to the FlightGear
+development list.