EMMA 2 Getting Started
Here comes a short HowTo about how to get started with developing EMMA.
CVS
- create a working direktory for CVS in your home named 'CVS'
 - cd to that directory and get the projects needed to run emma:
 
cvs checkout bioinfo/emma2
you need to checkout the following projects:
- emma2
 - projectmanagement
 - common
 
Web-Server
- goto CVS/bioinfo/emma2/share/www
 - edit apache2.sh: change PORT=XXXX to any free port on the webserver, and set CVS= to your CVS-directory
 - login on the testwebserver (hook): `rsh hook`
 - execute
 
CVS/bioinfo/emma2/share/www/apache2.sh start
- try to open http://hook:PORT with your browser
 - if nothing happens or you get an error message have a look at `CVS/bioinfo/emma2/share/www/all.errors`
 
Documentation
The main source of documentation is this Wiki ;) see EMMA2Overview The other main source is the perldoc documentation. The generated O2DBI-servermodules are pod documented. You can read them with:
perldoc module.pm
Other modules may also have pod-documetation but this is not guaranteed. The documentation found can also be incomplete or rather outdated. The documentation of the server-modules is mostly derived from the MAGE-OM documentation. Additional documention on the MAGE-OM part of the data scheme can be found at http://www.mged.org .
Additional documentation can be found in CVS/bioinfo/emma2/share/doc.
Directory Structure
The directory `CVS/bioinfo/emma2/` contains the specific components of the emma2 software:
- `/bin` start wrapper(s) for executable scripts in `/share/exec`.
 
To run a script in share exec type: `emma_start scriptname.pl -p project [options]`
- `/share` contains the main application code
- `/exec` executable scripts
 - `/perl` contains the perl code
- `/EMMA` same as above
- `/www/modules` modules generating html
 - `/www/cgi-bin` the cgi-scripts
 - `/DBmodules` modules accessing the backend, used by the www-modules
 - `/MAGEOM` the generated o2dbi backend modules
 - `/MAGEOM_Server` the extension modules for o2dbi where functionality can be added to the standard classes
 
 
 - `/EMMA` same as above
 
 - `/www` contains web-server specific code and the document root
- `/tmpl' the HTML-templates for each page
 
 - `/src` contains the DB scheme and code for generation of code and documentation