====== EDE Installation Howto ======
===== Prerequisites =====
Make sure you have listed requirements or ''EDE'' might not compile (properly). If a required version was mentioned, please use that (or a newer) release.
==== Required programs and libraries ====
This is the list of must-have programs and libraries or ''EDE'' and ''edelib'' (''EDE'' Library) compilation will fail. All these programs and libraries are usually already part of a default installation on most distributions. If not, they can most likely be installed via your distributions repositories. If all else fails, you can compile them from source, too (in that case please refer to the documentation of that packages for more information on how to do that).
* C++ compiler (g++ >= 2.95 or newer, Clang or any recent %%SunStudio%% versions). Compiling with Intel C++ wasn't tested, but should be possible
* [[http://www.freedesktop.org/wiki/Software/pkg-config/|pkg-config]] or [[https://github.com/pkgconf/pkgconf|pkgconf]]
* [[http://www.fltk.org|FLTK]] >= 1.1.7
* [[http://www.freedesktop.org/wiki/Software/dbus|DBus]] >= 1.0
* autoconf and aclocal (aclocal is part of automake package) are needed //only// if you downloaded ''EDE'' sources directly from the source repository
==== Optional programs and libraries ====
This is the list of programs and libraries used by ''EDE'' and ''edelib'' we would like you to have, but which are not mandatory. If they are not present, certain features might be disabled.
=== Edelib ===
* doxygen - used to create API documentation
* inotify (present in linux kernel since 2.6.13) or Gamin/Fam
=== EDE ===
* python >= 2.3 - used to create documentation
* UPower - comes with newer distributions (you can find out more at http://upower.freedesktop.org)
* librsvg (only used rsvg tool) - used to create the //edeneu// theme from .svg icons; this is only needed if you downloaded ''EDE'' directly from the source repository
* xscreensaver - usually comes with your distribution
* [[http://curl.haxx.se/|cURL]] - used for the [[ede-bug-report|bug reporting tool]]; it should come with your distribution
There is a known issue (Bug 156) with python >= 2.6.2 and building EDE documentation. If you get into the problems as described in the bug report, please use the solution given in the comment on that report.
==== EDE programs and libraries ====
This is the list of ''EDE'' related programs and libraries you should download from our download pages:
* jam
* edelib 2.0
* ede 2.0
:!: If you are going to install EDE on default location (///usr/local//), make sure you uninstall previous EDE version or use different prefix (like: //./configure --prefix=/opt/ede//).
===== Compiling EDE =====
After you extracted each of ''EDE'' related programs, compile them in the order given below.
=== Compiling jam ===
''JAM'' ("//Just Another Make//") is a make replacement we are using to compile ''EDE'' and ''edelib''. Some distributions provide a ''JAM'' package. **__Make sure it is the official ''JAM'' or ''FTJAM''__**; another common version tody is //Boost JAM//, but ''EDE'' can't be built with it!
To see if it is the official jam, execute:
jam -v
and if you get something like:
Jam 2.5. OS=LINUX. Copyright 1993-2002 Christopher Seiwald.
or
FT-Jam 2.5.3. OS=LINUX. (C) 1993-2003 Christopher Seiwald, see www.freetype.org/jam/
then it is ok. If you are not sure what jam version you have (but already one installed), let ''edelib'''s configure script detect it and report if it can be used. You can always download the ''JAM'' version we are using from our download pages if you are not sure.
Once you downloaded the ''JAM'' source decompress it. It already comes with a Makefile, so simply running:
make
will compile it.
Installation is done by copying ''JAM''s' binary to a common binary location, like ///usr/local/bin//. The binary will be compiled in //bin.YOUROS// location, where YOUROS is operating system you are running, e.g. on Linux, the executable will be in //bin.linuxx86// and on FreeBSD will be in //bin.freebsdx86//. If you are using ''FTJAM'', the binary directory will be //bin.unix//.
Copying is done with:
cp bin.YOUROS/jam /usr/local/bin
=== Compiling edelib ===
In case you downloaded ''edelib'' from the source repository, make sure to run:
./autogen.sh
first as that will create the correct configure script. If you downloaded the official source release, this step is not needed because a configure script was already created. The rest is executing:
./configure
then running jam (not make!):
jam
and finally as superuser:
jam install
=== Compiling ede ===
If you installed ''edelib'' with different prefix than ///usr//, export that path to pkg-config so it can find the ''edelib'' libraries. To do so, run:
export PKG_CONFIG_PATH=/lib/pkgconfig
Compiling ''EDE'' is the same as for ''edelib''. Also, if you downloaded ''EDE'' sources from source repository, make sure to run:
./autogen.sh
first, then:
./configure
afterwards:
jam
and finally as superuser:
jam install
:!: **Note:** if you downloaded ''EDE'' source code from repository (//ede2// module) the default icon theme is not built, so you must do it manually. This is a really simple procedure where you should pass only one parameter to the ''JAM'' tool (you have to have librsvg installed, too). So, instead of just //jam// and //jam install// as given above, you should run:
jam -sBUILD_ICON_THEMES=1
and
jam -sBUILD_ICON_THEMES=1 install
This will build ''EDE'' and icon theme, installing both.
===== Starting EDE =====
If you are using display or login manager (like gdm, kdm or xdm) and you installed ''EDE'' with default prefix (it will use ///usr// by default), you will see a session entry named **EDE** in your display manager's list of available sessions. However, if you install ''EDE'' with different prefix, make sure to copy the //ede.desktop// file (you will find it at ///share/xsessions/ede.desktop// path) to ///usr/share/xsessions// folder, or configure your display manager to find ''EDE'''s installation path.
If you are not using a display manager (you start X session from terminal with //startx// command), put **startede** at the end of the //.xinitrc// file (found in your home directory, like ///home/your_username/.xinitrc//, but make sure you comment previous window managers or desktop starting scripts if they exist.
If you do not have //.xinitrc// file in your home directory or you are not sure how things should be modified, here is a working sample you can copy and paste:
#!/bin/sh
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f $userresources ]; then
xrdb -merge $userresources
fi
if [ -f $usermodmap ]; then
xmodmap $usermodmap
fi
# Comment your previously used window managers or desktops
# /usr/bin/cool-window-manager
# /usr/local/bin/cool-desktop
# Start EDE
startede
===== Conclusion =====
That would be it. Happy using and let us know what you are thinking about it! Please report any issues you might encounter on http://bugs.equinox-project.org.