Versions of Tools Needed
See Tested/Verified Tool Versions.
Daffodil development uses quite a few tools. To avoid the pages of this wiki becoming obsolete every time a tool-version changes, we centralize the Tested/Verified Tool Versions so that there's only one place that contains the actual version numbers. All the other pages should avoid specifying versions of anything.
IMPORTANT: These instructions were created using Windows 7 64-bit and Fedora 17 64-bit (Gnome 3.4.2)
Requirements
Java 1.7 or higher.
SBT (0.12.1 or higher)
Scala 2.9.2
Getting Started
In order to contribute to Daffodil, you will need to follow a few steps.
It is important to note that you will need to complete a separate installation of Eclipse for Daffodil work as portions of the configuration steps will alter your XML settings.
If you are an experienced Developer familiar with the tools and technologies below you may proceed directly to the configuration steps. Otherwise, please read and follow carefully.
You will need to:
Setup for command-line tool building of Daffodil is mandatory. Some things required by our development processes have to be done from the command line, regardless of whether most of your time will be spent using an IDE like Eclipse.
Setup for the Eclipse IDE is optional. See the Eclipse for Daffodil page.
IMPORTANT: You are expected to use the versions of the tools below that are given at Tested/Verified Tool Versions.
You will need to:
For MS-Windows users: Setup Microsoft Windows for Unicode, as full Unicode support is required for using Daffodil.
- Install Java Software Development Kit aka SDK or JDK. (Note: Not only the Java Runtime Environment or JRE, you need the full JDK)
If you are running Linux, you can choose to use the OpenJDK. Follow the instructions here: http://openjdk.java.net/install/
On either Linux or MS-Windows, you can choose to use the Oracle JDK. The Java Install instructions from Oracle will tell you how to install the JDK for your platform.
- Install SBT
Note: you need sbt even if you intend to do development from an IDE like Eclipse. There are things built using sbt that are necessary for the IDE environment.
You can find SBT installation instructions here: http://www.scala-sbt.org/0.13/docs/index.html
- Install Git
- Instructions here: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
- MS Windows Users - you must turn off the "autocrlf" feature. The default that the Windows installer uses WILL NOT WORK.
- The git config file (c:\ProgramData\Git\config) should have "autocrlf = input"
- Set Environment Variables
- Obtain Daffodil Source - See Getting Daffodil
- Install Java 7 SDK
- Install Eclipse
- Install SBT
- Install Git
- Configure SBT
- Configure Eclipse
- Retrieve Daffodil Source
- Execute a Preliminary Build to Retrieve LibrariesConfigure Eclipse: Settings and XML
- Build Daffodil
- Run Daffodil you just Compiled from the Command Line
- Development Workflow
...
Reference Material
...