Difference between revisions of "4/Development setup"

From Worms Knowledge Base

Jump to: navigation, search
(ae and requisites: improve wording a bit)
(Update)
Line 5: Line 5:
 
There are two versions of the language: D 1 and 2. D2 is the current version, thus commonly referred to as just "D".
 
There are two versions of the language: D 1 and 2. D2 is the current version, thus commonly referred to as just "D".
  
Warning: The D installer is known to truncate the system PATH environment variable over a certain limit. (If you don't know what this means, it most likely doesn't apply to you.)
+
* Proceed to the [http://dlang.org/download.html D download page], and download the current "dmd D 2.0 compiler 1-click install for Windows".
 
+
* Download and run the [http://ftp.digitalmars.com/dinstaller.exe D Windows installer].
+
 
** On the component selection screen, uncheck "D 1".
 
** On the component selection screen, uncheck "D 1".
 +
 +
== Git ==
 +
[http://git-scm.com/ Git] is a [[w:source control]] system. ae and its dependencies are stored in git.
 +
 +
[http://git-scm.com/download/win Download] and install the Windows version of git.
 +
* At '''Adjusting your PATH environment''', select one of the first two options.
 +
* At '''Choosing the SSH executable''', select '''Use OpenSSH'''.
 +
* At '''Configuring the line ending conventions''', select '''Checkout as-is, commit as-is'''.
  
 
== ae and requisites ==
 
== ae and requisites ==
There are two ways to set up development libraries: the proper way (using source control), and the easy way (zip snapshots). The proper way allows to easily update and contribute back to the libraries, but requires a lot more work when setting up from scratch. This page covers the easy way.
+
* Create a work directory which will contain all the source code. The path should not contain spaces.
  
* Download the following libraries:
+
* Right-click on the newly-created work directory, and select '''Git Bash'''.
** [http://www.dsource.org/projects/bindings/changeset/head/trunk/win32?old_path=/&format=zip Win32 bindings]
+
 
** [http://www.dsource.org/projects/derelict/changeset/head/branches/Derelict2/DerelictUtil/derelict?old_path=%2F&format=zip Derelict2 Util]
+
* At the prompt, type (without the <tt>$</tt> signs):
** [http://www.dsource.org/projects/derelict/changeset/head/branches/Derelict2/DerelictSDL/derelict?old_path=%2F&format=zip Derelict2 SDL]
+
 
** [http://www.dsource.org/projects/derelict/changeset/head/branches/Derelict2/DerelictGL/derelict?old_path=%2F&format=zip Derelict2 OpenGL]
+
$ git clone https://github.com/CyberShadow/ae
** [https://github.com/CyberShadow/ae/zipball/master Armageddon Engine]
+
$ git clone https://github.com/CS-svnmirror/dsource-bindings-win32 win32
{{gap}}
+
$ git clone https://bitbucket.org/cybershadow/derelict.git
[[File:ae-setup-folderstructure.png|thumb|right|Folder structure]]
+
 
* Unpack all ZIP files.
+
* Go back to the work directory, and copy the path to it from the address bar.
* Create a new folder, and place the unpacked folders in the new folder as shown in the picture to the right. You will need to:
+
** rename the root folder from the last zip file from <code>CyberShadow-ae-<i>something</i></code> to simply <code>ae</code>.
+
** merge the contents of <code>derelict</code> subdirectories from the derelict zip files.
+
* Copy the path to the new folder from the address bar.
+
 
{{gap}}
 
{{gap}}
 
* Navigate to <code>C:\D\dmd2\windows\bin</code>, and open <code>sc.ini</code> in Notepad.
 
* Navigate to <code>C:\D\dmd2\windows\bin</code>, and open <code>sc.ini</code> in Notepad.
Line 32: Line 34:
 
: [[File:ae-setup-dmd-scini.png|thumb|600px|none|Example correct sc.ini]]
 
: [[File:ae-setup-dmd-scini.png|thumb|600px|none|Example correct sc.ini]]
 
* Save and close the file.
 
* Save and close the file.
 +
 +
* You will also need to [http://www.libsdl.org/download-2.0.php download the SDL2 DLL] (you'll need the Runtime binary for 32-bit Windows). Place the DLL in the folder you created.
 +
 +
You should now be able to compile and run the PewPew demo by running the following command from the work directory:
 +
 +
$ rdmd ae/demo/pewpew/pewpew
 +
 +
For improved performance, you can create and run a release build with the command:
 +
 +
$ rdmd -O -inline -release ae/demo/pewpew/pewpew
 +
 +
Below are instructions for setting up an editor or IDE, for more comfortable development.
 +
 
<!--
 
<!--
 
>>>>>>>>>>>>>> Visual D is blocked by http://www.dsource.org/forums/viewtopic.php?p=27618 <<<<<<<<<<<<<<<
 
>>>>>>>>>>>>>> Visual D is blocked by http://www.dsource.org/forums/viewtopic.php?p=27618 <<<<<<<<<<<<<<<
Line 63: Line 78:
 
* ???
 
* ???
 
* Profit!
 
* Profit!
-->
+
 
  
 
== SDL runtime ==
 
== SDL runtime ==
Line 70: Line 85:
 
* Download the Win32 runtime library from the [http://www.libsdl.org/download-1.2.php SDL 1.2 download page].
 
* Download the Win32 runtime library from the [http://www.libsdl.org/download-1.2.php SDL 1.2 download page].
 
* Place <code>SDL.dll</code> in your project's directory, or somewhere on the system path (e.g. <code>C:\Windows</code>)
 
* Place <code>SDL.dll</code> in your project's directory, or somewhere on the system path (e.g. <code>C:\Windows</code>)
 +
 +
-->
  
 
== Geany ==
 
== Geany ==
Line 94: Line 111:
 
:These warnings can be safely ignored.
 
:These warnings can be safely ignored.
 
;Derelict SharedLibLoadException
 
;Derelict SharedLibLoadException
:The program could not find the SDL DLL. Copy SDL.dll in the program's folder, or to any folder in the system PATH.
+
:The program could not find the SDL DLL. Copy SDL2.dll in the program's folder, or to any folder in the system PATH (e.g. <code>C:\Windows</code>).

Revision as of 02:20, 13 July 2014

(Up to 4)

This page describes how to set up a working development environment with D and Armageddon Engine on Windows, and build the sample ae demos.

D

There are two versions of the language: D 1 and 2. D2 is the current version, thus commonly referred to as just "D".

  • Proceed to the D download page, and download the current "dmd D 2.0 compiler 1-click install for Windows".
    • On the component selection screen, uncheck "D 1".

Git

Git is a w:source control system. ae and its dependencies are stored in git.

Download and install the Windows version of git.

  • At Adjusting your PATH environment, select one of the first two options.
  • At Choosing the SSH executable, select Use OpenSSH.
  • At Configuring the line ending conventions, select Checkout as-is, commit as-is.

ae and requisites

  • Create a work directory which will contain all the source code. The path should not contain spaces.
  • Right-click on the newly-created work directory, and select Git Bash.
  • At the prompt, type (without the $ signs):
$ git clone https://github.com/CyberShadow/ae
$ git clone https://github.com/CS-svnmirror/dsource-bindings-win32 win32
$ git clone https://bitbucket.org/cybershadow/derelict.git
  • Go back to the work directory, and copy the path to it from the address bar.

 

  • Navigate to C:\D\dmd2\windows\bin, and open sc.ini in Notepad.
  • Find the line starting with DFLAGS=
  • At the end of the line, type a space, then "-I, then paste the path copied above, then type " to close the quotes.
Example correct sc.ini
  • Save and close the file.
  • You will also need to download the SDL2 DLL (you'll need the Runtime binary for 32-bit Windows). Place the DLL in the folder you created.

You should now be able to compile and run the PewPew demo by running the following command from the work directory:

$ rdmd ae/demo/pewpew/pewpew

For improved performance, you can create and run a release build with the command:

$ rdmd -O -inline -release ae/demo/pewpew/pewpew

Below are instructions for setting up an editor or IDE, for more comfortable development.


Geany

There are many editors and IDEs supporting D. This page describes setting up Geany, but there are many others available. If you're feeling adventurous, you can try experimenting with some of the editors and IDEs on this page.

  • Download and run the Windows Geany installer (with GTK) from the Geany download page.
  • Start Geany, and open a D file (for example, ae/demo/pewpew/pewpew.d).
  • From the Build menu, select Set build commands
  • In the edit box near the Build button (in the Command column), replace the command with: rdmd --build-only -w -g -of.\ "%f"
Screenshot
  • You should now be able to compile the current file with F8, build the currently-opened D program with F9, and run it with F5.
  • To create optimized builds (which catch less programming errors and are unsuitable for debugging, but run faster), use this Build command line: rdmd --build-only -w -O -inline -release -of.\ "%f"

Troubleshooting

Warnings about missing rpcns4.lib, mpr.lib, version.lib
These warnings can be safely ignored.
Derelict SharedLibLoadException
The program could not find the SDL DLL. Copy SDL2.dll in the program's folder, or to any folder in the system PATH (e.g. C:\Windows).
Personal tools