# Installation & Updating

## Installation & updating

### System requirements

1. Eclipse 3.6 or above.
2. GF 3.3.3 or above. The path to GF must be set within the plugin preferences (see below).

Using the GF Resource Grammar Library requires that the RGL binaries are also installed on your system. If you are using the pre-compiled binaries but have separately downloaded the RGL sources to your system, you can optionally specify this path in the plugin preferences (see below).

### Installing the plugin for the first time

#### Available Software Sites

In order for dependencies to be satisfied, you need to ensure that your Eclipse has the following update site URLs set:

• Eclipse releases (change version name to match): http://download.eclipse.org/releases/indigo
• Xtext: http://download.eclipse.org/modeling/tmf/xtext/updates/composite/releases/

You can set these from Preferences → Install/Update → Available Software Sites.

#### Eclipse preferences

How to find the Eclipse preferences window depends on your Eclipse version and/or OS, and may be either of:

• Window → Preferences
• Eclipse → Preferences

### Installation

1. Inside Eclipse, go to Help → Install New Software.
2. Add new software site using the URL: http://www.grammaticalframework.org/eclipse/release/
3. Select the GF Eclipse Plugin, and make sure the Contact all update sites during install to find required software option is checked.
4. Click Next, accept the license agreement and install.
5. Accept the prompt warning that the software is unsigned.
6. Restart Eclipse when prompted.

#### Settings

1. Add the GF perspective by clicking Window → Open Perspective → Other and choosing GF.
2. Open the plugin settings by going to Preferences → Grammatical Framework (image below).
3. The plugin will try to determine the path to your GF executable automatically, but this may need to be corrected.
The path should include the name of the GF binary itself, e.g. /home/john/.cabal/bin/gf or C:\Users\John\GF\bin\gf.exe.
4. The Additional path directive setting can be used if you want to avoid writing --# -path=... directives in your source files. By default it is set to .:alltenses:prelude, but can also be left blank. This is passed to GF using the --path flag.
5. If you are using a pre-compiled version of the Resource Grammar Library (i.e. you didn't build it from source yourself) but you have the sources available on your system, then you can enter their path in the Library source path setting. This is optional and is only used for jumping to source definitions.
You should enter an absolute system path, up to and including the src folder, e.g. /home/john/GF/lib/src/ or C:\Users\John\GF\lib\src\.
6. You can also adjust the verbosity level of the GFEP console log in the preferences window.

### Updating the plugin

1. In Eclipse, go to Help → Check for updates.
2. Any available updates will appear in the dialog. Select them and follow the usual steps.

#### Deprecated stuff

• Any folders .gfexternal can safely deleted as of GFEP ≥ 1.5. Using Eclipse's Clean function from the Run menu will do this for you automatically.
• If your project has a folder named (External) you can safely delete this via the Eclipse Project Explorer. It is no longer used in GFEP ≥ 1.2.3
• If your workspace contains a log file gfep.log then you can safely delete it from your system. As of version 1.2.4, GFEP uses Eclipse's standard log file at /.metadata/.log

### Project settings

Although the plugin should take care of your project settings for you, in case anything gets messed up you can always correct them manually as follows:

#### Project nature

Your .project file should include the GF Project Nature as follows:

    <natures>
<nature>org.grammaticalframework.eclipse.ui.natures.projectNatureID</nature>
</natures>


#### Builder

Your .project file should include the GF Builder as follows:

    <buildSpec>
<buildCommand>
<name>org.grammaticalframework.eclipse.ui.build.GFBuilderID</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>


#### Specifying build files (guided build)

As of GFEP ≥ 1.5.2, you are now able to explicitly which modules in your GF project should be built by the builder. This would normally contain your "top-level" modules. This can be done right-clicking on your project in the Project Explorer and choosing Properties → GF Build Settings. From here you simply tick which modules in your project the GF builder should compile:

When doing this, GFEP will never attempt to compile any other files in the project. Whenever you add a new top-level module or change your module hierarchy, be sure to check these build settings again.

### Missing requirement

John,

I now got the error message:

Missing requirement: GF Eclipse Plugin 1.2.5.201202020944 (org.grammaticalframework.feature.feature.group 1.2.5.201202020944) requires 'org.eclipse.xtext 2.1.0' but it could not be found

Do you recall installing this library?

### Missing requirement

Hi Olga, In order for Eclipse to be able to find all the package requirements, you must have the following update site URLs set in Eclipse:

Also you must check the box: "Contact all update sites during install to find required software"

### Update issues

I have installed the plugin some time ago, I guess the URL has changed since. When I run the update procedure I get the error message as in screenshot.

Maybe there is a way to redirect the update from the obsolete URL?

### New update site URL

Yes the update URL has changed. I have created a symbolic link so that the beta URL now points to the release folder. However it would be best if you updated the update site URL directly.

### Setting the encoding

Is there a way to set the encoding automatically? I now did it manually to UTF-8 under Edit for the files that look weird.

### Encoding

This is an Eclipse issue; You can set the default encoding for all files in your project by right-clicking on the project in the explorer, choosing "Properties", and setting the "Text file encoding" setting under the "Resource" section.