Setup of Development environment
Windows Development environment
Required software
- Git (see also some Notes about Git); recommended: TortoiseGit
- Microsoft .Net 3.5 Redistributable and SDK (we only use .Net 2.0 for OpenPetra, but SharpDevelop requires .Net 3.5)
- SharpDevelop 3.0
- NAnt (see also some Notes about NAnt)
- one of the following Database Management systems:
- PostgreSQL (recommended) Notes about PostgreSQL
- MySQL Notes about MySQL
- no installation effort at all is required for SQLite
- Poedit (for translation) (see also Notes about I18N)
- Mono (for translation)
- Inno Setup 5 for building setup files
Linux Development environment
Install required software
Please add information for other distributions that you are working with!
Git
- on Ubuntu/Debian: apt-get install git-core
MonoDevelop 2.x
- on Ubuntu/Debian: apt-get install mono-2.0-runtime monodevelop
NAnt
- on Ubuntu/Debian: apt-get install nant
- Problem: NAnt 0.85 (Build 0.85.2478.0; release; 10/14/2006) does not seem to support the task "solution" on Linux?
Invalid element <solution>. Unknown task or datatype.
- Solution: copy binary zip from sourceforge, unzip, and change /usr/bin/nant to point at the latest NAnt.exe
- Also you need to make a symbolic link:
- Problem: NAnt 0.85 (Build 0.85.2478.0; release; 10/14/2006) does not seem to support the task "solution" on Linux?
ln -s /usr/lib/mono/2.0/Microsoft.CSharp.targets /usr/lib/mono/2.0/Microsoft.CSharp.Targets
SQLite or PostgreSQL
- on Ubuntu/Debian: apt-get install sqlite3; or apt-get install postgresql
Get the source code
The source code is managed with Git. You can get the source code in several ways:
- see the Git instructions at Sourceforge
- that page describes how you can download anonymously from Git
- you can also browse the Git repository online, and you can download a tar.gz snapshot there
- the latest release should also provide a download of the source files, see Download section
- See the extra page for Git with write permission
Configuration of Windows Development Environment
The recommended way of installing OpenPetra.org for development is to somewhere map a network drive, using the DOS command subst
For example:
mkdir c:\development subst u: c:\development download the git repository into u:\OpenPetra (it contains the .git directory, and the OpenPetra.build: U:\OpenPetra\OpenPetra.build, etc)
- you need to make a copy of the file OpenPetra.build-sample-windows.config and call it OpenPetra.build.config
copy OpenPetra.build-sample-windows.config OpenPetra.build.config
Configuration of Linux Development Environment
cd ~ git clone git://openpetraorg.git.sourceforge.net/gitroot/openpetraorg cd openpetraorg cp OpenPetra.build-sample-linux.config OpenPetra.build.config
NAnt
There is a central NAnt script that is able to generate a lot of code and is able to do all automated tasks in the OpenPetra project.
get help
To see the available commands, just run on the command line:
cd OpenPetra nant help
initial steps
First you need to compile the PetraTools which is a set of programs for creating databases and more:
nant compileCommon nant compilePetraTools
Now you need to create a database. If you don't change the config file, the SQLite database system will be used.
nant recreateDatabase
Then you want to load the database with base data:
nant resetDatabase
You should compile OpenPetra.org this way:
nant compilePetra
Start the OpenPetra.org Server:
nant startPetraServer
Start the OpenPetra.org client:
nant startPetraClient
With the base database, there is the user demo with password demo that you can use to login to your installation of OpenPetra.org.
See Preview: Current functionality for information what is actually working already.
Stop the OpenPetra.org Server:
nant stopPetraServer
Generate the translation files:
nant translation