User Tools

Site Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
cppdev:gettingstarted [2013-10-20 12:27]
Carsten [Compiler Setup] Update for VC++ 2012
cppdev:gettingstarted [2016-08-06 14:45]
Carsten Revise section "Getting the Source Code"
Line 9: Line 9:
 ===== Getting the Source Code ===== ===== Getting the Source Code =====
  
-This section explains how you initially get the Cafu source code+This section explains how you initially get the Cafu source code by checking it out from its [[https://​bitbucket.org/​cafu/​cafu|Git repository]].
-The Cafu source code can be obtained from a compressed archive or by checking it out from its Git repository.+
  
- +Git is a version control system that allows the Cafu developers to work on their copy of the source code independently of each other, and to distribute the latest version of the source code to other developers at any time.
-==== Downloading a Compressed Archive ==== +
- +
-The easiest way to get the Cafu source code is to download a compressed archive for your platform from [[http://​www.cafu.de/​downloads|www.cafu.de/​downloads]]. +
- +
-The contents of the Windows (''​zip''​) and Linux (''​gz'',​ ''​bz2''​) archives is the same (inclusive end-of-line style), but Linux users should still get the ''​gz''​ or ''​bz2''​ archive type, as it properly sets the executable flags that are required for the build scripts. +
- +
-Extract the archive contents into an arbitrary directory and you're ready for the [[#​python_and_scons|next step]]. +
- +
- +
-==== Git Repository Access ==== +
- +
-Alternatively,​ you can also check out the Cafu source code directly from its Git repository. +
-/* (We recently migrated from Subversion to Git, a detailed report is at [[http://​www.cafu.de/​forum/​viewtopic.php?​f=14&​t=1090|Part 1]], [[http://​www.cafu.de/​forum/​viewtopic.php?​f=14&​t=1092|Part 2]].) */ +
- +
-Git is a version control system that allows the Cafu developers to work on their copy of the source code independently of each other, and to distribute the latest version of the source code to users and developers at any time.+
 Moreover, many developers prefer to manage their project independently in their own version control system, but also wish to integrate the latest changes (e.g. bug-fixes and new features) from the official Cafu repository into theirs from time to time: Git makes the synchronization of the projects code with the original Cafu source code as convenient and automatic as possible. Moreover, many developers prefer to manage their project independently in their own version control system, but also wish to integrate the latest changes (e.g. bug-fixes and new features) from the official Cafu repository into theirs from time to time: Git makes the synchronization of the projects code with the original Cafu source code as convenient and automatic as possible.
- 
 If you don't know Git yet, have a look at the [[http://​git-scm.com|Git website]] and the [[http://​git-scm.com/​documentation|Git documentation]]. The "Pro Git" book is very well written and available for free in several languages. If you don't know Git yet, have a look at the [[http://​git-scm.com|Git website]] and the [[http://​git-scm.com/​documentation|Git documentation]]. The "Pro Git" book is very well written and available for free in several languages.
- 
-You should prefer getting the source code from the repository over getting it from a compressed archive whenever possible: 
-The code from the repository is always the latest and can easily be updated at any time. 
-There is no better way to get and share new features and bug fixes conveniently and simple. 
  
 For Windows and many other systems, you can get Git from the [[http://​git-scm.com/​downloads|Git downloads]] page. Popular Git clients with a graphical user interface are available at the Git downloads page as well. For Windows and many other systems, you can get Git from the [[http://​git-scm.com/​downloads|Git downloads]] page. Popular Git clients with a graphical user interface are available at the Git downloads page as well.
Line 45: Line 24:
 Then check out the source code at the command-line under Windows or Linux with this command: Then check out the source code at the command-line under Windows or Linux with this command:
 <code bash> <code bash>
-> git clone https://​bitbucket.org/​cafu/​cafu.git Cafu+> git clone --recursive ​https://​bitbucket.org/​cafu/​cafu.git Cafu
 </​code>​ </​code>​
  
-Our Git project page is https://​bitbucket.org/​cafu/​cafu,​ where you can browse the repository online, create forks, post pull requests, and find very good additional help.+Note the ''​%%--recursive%%''​ option in the command above: it makes sure that submodules are automatically checked out as well. As we keep the texture images for the DeathMatch example game in a submodule, it is convenient to have them checked out along with the main repository. Be prepared though that this adds approximately 180 MiB to the download volume. 
 + 
 +Our Git project page is https://​bitbucket.org/​cafu/​cafu,​ where you can browse the repository online, create forks, post pull requests, and find additional help about Git.
  
  
Line 110: Line 91:
  
 On a fresh, newly installed **Ubuntu 8.04 (Hardy Heron)** system, you'll additionally need the following packages. On a fresh, newly installed **Ubuntu 8.04 (Hardy Heron)** system, you'll additionally need the following packages.
-This can be done at the command prompt with the ''​apt-get install''​ command, or via the easier ​to use "​Synaptic Package Manager" ​(recommended).+They can be installed ​at the command prompt with the ''​apt-get install''​ command, or via the easy to use "​Synaptic Package Manager"​.
 Similar packages and package management systems also exist on RedHat Linux, SuSE, etc., where you can proceed analogously. Similar packages and package management systems also exist on RedHat Linux, SuSE, etc., where you can proceed analogously.
  
Line 116: Line 97:
   * **build-essential** -- The compiler and basic tools required to compile C and C++ programs.   * **build-essential** -- The compiler and basic tools required to compile C and C++ programs.
   * **libgtk2.0-dev** -- Developer files for GTK 2.0, needed for building wxGTK.   * **libgtk2.0-dev** -- Developer files for GTK 2.0, needed for building wxGTK.
-  * **libgl1-mesa-dev** and **libglu1-mesa-dev** -- OpenGL developer files, needed for building wxGTK and the Cafu rendering subsystem. On Debian Sarge (3.1), the packages **xlibmesa-gl-dev** and **xlibmesa-glu-dev** used to serve the same purpose, but on newer systems, they have been replaced by the **libgl(u)1-mesa-dev** packages.+  * **libgl1-mesa-dev** and **libglu1-mesa-dev** -- OpenGL developer files, needed for building wxGTK and the Cafu rendering subsystem.
   * **libasound2-dev** -- ALSA developer files, needed for building OpenAL-Soft.   * **libasound2-dev** -- ALSA developer files, needed for building OpenAL-Soft.
  
Line 149: Line 130:
 === 64-bit Windows with Visual C++ 2010 or 2012 Express Editions === === 64-bit Windows with Visual C++ 2010 or 2012 Express Editions ===
  
-On 64-bit Windows systems, SCons tries to find a 64-bit compiler, but Visual C++ 2010 Express Edition comes with a 32-bit compiler only. To tell SCons to use the 32-bit compiler instead, please edit file ''​Cafu/​CompilerSetup.py''​ as described [[http://www.cafu.de/forum/​viewtopic.php?​p=4360#​p4360|here]].+On 64-bit Windows systems, SCons tries to find a 64-bit compiler, but Visual C++ 2010 Express Edition comes with a 32-bit compiler only. To tell SCons to use the 32-bit compiler instead, please edit file ''​Cafu/​CompilerSetup.py''​ as described [[http://forum.cafu.de/​viewtopic.php?​p=4360#​p4360|here]].
  
-Even though the Visual C++ 2012 Express Edition is supposed to come with a 64-bit compiler, at this time unforunately the [[http://www.cafu.de/forum/​viewtopic.php?​p=4360#​p4360|same edits]] must be done for it as well.+Even though the Visual C++ 2012 Express Edition is supposed to come with a 64-bit compiler, at this time unforunately the [[http://forum.cafu.de/​viewtopic.php?​p=4360#​p4360|same edits]] must be done for it as well.
  
  
Line 226: Line 207:
 Or you just browse the files and folders in the ''​Cafu''​ directory, and start with whatever you feel most attracted to. Or you just browse the files and folders in the ''​Cafu''​ directory, and start with whatever you feel most attracted to.
  
-In any case, if you have questions or comments, or if you need help, write us a message at the [[http://www.cafu.de/forum/|support forums]] at any time!+In any case, if you have questions or comments, or if you need help, write us a message at the [[http://forum.cafu.de|support forums]] at any time!
  
cppdev/gettingstarted.txt · Last modified: 2017-01-06 11:33 by Carsten