Difference between revisions of "Compiling VDrift"
(→Linux) |
|||
Line 18: | Line 18: | ||
* '''vorbisfile''' - File loading library for the ogg vorbis format | * '''vorbisfile''' - File loading library for the ogg vorbis format | ||
* '''libvorbis''' - The Vorbis General Audio Compression Codec | * '''libvorbis''' - The Vorbis General Audio Compression Codec | ||
− | * | + | * Boost C++ Libraries (header-file-only) |
+ | * ASIO C++ Libraries (header-file-only) | ||
Your Linux distribution may have different package names and/or bundled differently. The list above should give enough information to search for applicable packages within your distribution's package manager. | Your Linux distribution may have different package names and/or bundled differently. The list above should give enough information to search for applicable packages within your distribution's package manager. | ||
Line 26: | Line 27: | ||
====Bullet==== | ====Bullet==== | ||
− | As of SVN R2358, no steps are required to build bullet and you can continue to the next section. | + | As of SVN R2358 (2009-06-15 release and later), no steps are required to build bullet and you can continue to the next section. |
For the 2009-02-15 release, the only step required is to expand the Bullet source archive: | For the 2009-02-15 release, the only step required is to expand the Bullet source archive: | ||
Line 41: | Line 42: | ||
You can get the code from a source package for a particular version, or you can [[Getting the development version|get the development version]]. | You can get the code from a source package for a particular version, or you can [[Getting the development version|get the development version]]. | ||
====Source Package==== | ====Source Package==== | ||
− | [http://sourceforge.net/project/showfiles.php?group_id=137283 Download] the latest VDrift Linux source package. All the files in the package are in a directory called vdrift-'''version'''-src where '''version''' is something like 2009- | + | [http://sourceforge.net/project/showfiles.php?group_id=137283 Download] the latest VDrift Linux source package. All the files in the package are in a directory called vdrift-'''version'''-src where '''version''' is something like 2009-06-15. |
Unpack the archive. | Unpack the archive. | ||
− | tar jxvf vdrift-2009- | + | tar jxvf vdrift-2009-06-15-src.tar.bz2 |
=====Enter directory===== | =====Enter directory===== | ||
Now change directories into the location of your newly created VDrift source tree. | Now change directories into the location of your newly created VDrift source tree. | ||
− | cd vdrift-2009- | + | cd vdrift-2009-06-15 |
====Optional: Using scons-local instead of installing SCons==== | ====Optional: Using scons-local instead of installing SCons==== | ||
Line 84: | Line 85: | ||
For release 2009-02-15 and earlier, if you used the default install locations, VDrift can be run with the command: | For release 2009-02-15 and earlier, if you used the default install locations, VDrift can be run with the command: | ||
/usr/share/games/vdrift/bin/vdrift | /usr/share/games/vdrift/bin/vdrift | ||
+ | For release 2009-06-15 and later, if you used the default install locations, VDrift can be run with the command: | ||
+ | /usr/local/bin/vdrift | ||
==Mac OS X== | ==Mac OS X== |
Revision as of 21:01, 16 June 2009
Compiling VDrift is different depending on the operating system on which it is compiled.
Linux
Prerequisites
Make sure you have all the required libraries and build tools. Make sure you also have the development files for each of the libraries.
The required build tools include:
- g++ - The GNU C++ compiler
- scons - A replacement for Make
The required libraries include:
- libsdl - Simple Direct Media Layer
- libglew - OpenGL extension utilities
- sdl-gfx - Graphics drawing primitives library for SDL
- sdl-image - Image file loading library for SDL
- vorbisfile - File loading library for the ogg vorbis format
- libvorbis - The Vorbis General Audio Compression Codec
- Boost C++ Libraries (header-file-only)
- ASIO C++ Libraries (header-file-only)
Your Linux distribution may have different package names and/or bundled differently. The list above should give enough information to search for applicable packages within your distribution's package manager.
For Ubuntu, all the required packages may be installed using this command:
sudo apt-get install g++ scons libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-net1.2-dev libvorbis-dev libglew-dev libasio-dev
Bullet
As of SVN R2358 (2009-06-15 release and later), no steps are required to build bullet and you can continue to the next section.
For the 2009-02-15 release, the only step required is to expand the Bullet source archive:
tar zxvf bullet-2.73-sp1.tgz
Note: For older versions of VDrift, you will need to follow the Old Method of Compiling Bullet. |
SCons
As of the 2005-10-02 release, VDrift no longer uses ./configure, make, etc. (autotools). Now the project is built with SCons. You may want to read a little about Using SCons.
There are two ways to use SCons. The first way is to install scons on your system through your package manager, then you can use it simply by the name of the program, "scons". If you followed the directions for installing prerequisites for Ubuntu above, then you're done and can continue on to the next section. The second way is to use the scons-local package (included with VDrift) which will do the same thing but doesn't require that you install scons on your system. To do this, you must move the scons-local-0.96.95.tar.gz archive from tools to the root vdrift folder, un-tar the archive, and then use the ./scons.py
command instead of scons
.
Get the Code
You can get the code from a source package for a particular version, or you can get the development version.
Source Package
Download the latest VDrift Linux source package. All the files in the package are in a directory called vdrift-version-src where version is something like 2009-06-15.
Unpack the archive.
tar jxvf vdrift-2009-06-15-src.tar.bz2
Enter directory
Now change directories into the location of your newly created VDrift source tree.
cd vdrift-2009-06-15
Optional: Using scons-local instead of installing SCons
If you have decided not to install SCons on your system, you can use scons-local. To set it up, do the following:
tar zxvf tools/scons-local-0.96.1.tar.gz
Note: Some of the following steps refer to the scons command, you should now replace that with ./scons.py .
|
Compiling
To compile VDrift, just use the scons
command.
scons
Optional: Compile Options
You can use one or more compile options. To compile with optimization for a certain platform, you can use the arch option.
scons arch=a64
Compiling VDrift in release mode will turn off debugging options, and enable more compiler optimizations. VDrift runs much more quickly in release mode.
scons release=1
Note: These options are probably best left off the first time you compile. If you have problems compiling or running VDrift, it is easier to debug with them off. Once you verify that VDrift is compiling, then recompile with these optimizations to improve performance. |
Installing
VDrift does not need to be installed to work and you can run it from the folder where you compiled it. If you do want to install, use the SCons build target install. This command must be run as root.
sudo scons install
Note: The scons install process was broken for several releases including the 2009-02-15 release and may fail to install needed datafiles. If you have release 2009-02-15 or earlier, run "sudo scons install" as noted above and then manually re-copy the data files to the installed destination folder:
sudo cp -r data/* /usr/share/games/vdrift/data |
Optional: Installation Location
You can change the installation prefix. For example, if you want VDrift to go in /usr/local/share/games/vdrift
, you can change the prefix setting.
scons install prefix=/usr/local
Note: There are many more build and install options, see the Using SCons page for more information. |
Running
For release 2009-02-15 and earlier, if you used the default install locations, VDrift can be run with the command:
/usr/share/games/vdrift/bin/vdrift
For release 2009-06-15 and later, if you used the default install locations, VDrift can be run with the command:
/usr/local/bin/vdrift
Mac OS X
Prerequisites
The VDrift Mac OS X project requires Xcode version 2.2 with the "10.4 Universal SDK" and the "X11 SDK" installed.
Download
Get the VDrift source code, either from the latest source release on the VDrift downloads page, or the development version.
Build
Finally open tools/osx/vdrift.xcodeproj and hit "Build" from XCode's "Build" menu.
Windows
In order to build VDrift for Windows, you must set up the tools to build the software, build Bullet and VDrift, and then install VDrift into a runtime folder.
Install and Configure Build Tools
To build VDrift on Windows you'll need working installations of MinGW, MSYS and MSYS-DTK, Python, and SCons.
Note: The versions listed for these tools were the ones used at time of this writing (current stable versions of all packages), there may be new versions. This is a known working configuration. |
MinGW
- Download MinGW 5.1.3
- Run the installer.
- When asked to select components for install, you only need the base system and the g++ compiler.
- Choose the default install location.
MSYS
- Download MSYS 1.0.10
- Run the installer.
- Choose the default install location.
- When presented with a terminal asking if you want to continue with the post-install, type y, then press enter.
- When asked if MinGW is installed, enter C:/MinGW, then press enter.
- The MSYS post install script should find your MinGW installation now and configure itself.
MSYS DTK
- Download MSYS-DTK 1.01
- Run the installer and accept all the defaults.
Python
- Download Python 2.5.1
- Run the installer and accept all the defaults.
SCons
- SCons 0.97
- Run the installer. It should find your Python installation, accept all defaults.
Download VDrift Source and Data
Get the VDrift source code and data, either from the latest source release on the VDrift downloads page, or the development version.
Note: From this point on the directory in which you checked out VDrift will be referred to as the root VDrift directory. The development environment setup script puts this in an environment variable $VDRIFT_DIR. |
Building
Boost
Download a Boost distribution from this link:
http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041&release_id=679861
Uncompress Boost, and move the boost_1_39_0/boost folder to VDrift/tools/win/include
ASIO
Download the ASIO distribution from this link:
http://sourceforge.net/project/showfiles.php?group_id=122478&package_id=134200&release_id=665620
Uncompress ASIO, and move asio-1.4.1/include/* to VDrift/tools/win/include
VDrift
To build VDrift you must use the MSYS terminal, compile the Bullet library, and compile VDrift itself.
- Launch MSYS by clicking Start -> Programs -> MinGW -> MSYS -> msys.
- Change directories to the spot where you checked VDrift out. If your username is Administrator and you put it on your Desktop in a directory named VDrift, you would enter this command:
cd /c/Documents\ and\ Settings/Administrator/Desktop/VDrift
- Now, to build VDrift, run the command:
build_vdrift.sh
Run VDrift
- Move or copy the VDrift data to a directory named data within the root VDrift directory. This can be done in a few different ways, depending on how you obtained the VDrift data. You could check it out directly here, or you could check it out in another place and use TortoiseSVN to export it to this location. If you downloaded a VDrift data archive you can extract it here, or extract it elsewhere and then move or copy the necessary files to runtime. In the end, just make sure you have a directory structure with paths like VDrift/data/cars/, VDrift/data/tracks/, etc.
Running
Now, to run VDrift, you just need to double-click on the file vdrift.exe within the root VDrift directory.