288 lines
13 KiB
Plaintext
288 lines
13 KiB
Plaintext
Welcome to the Enlightenment Installation Instructions. Here, we'll try to go
|
|
over everything that you need to know in order to compile and install
|
|
Enlightenment on your system.
|
|
|
|
Thanks to the joy of automated documentation, there is lots of additional data
|
|
here for compilation instructions. If you have already compiled Enlightenment
|
|
and are having trouble getting Enlightenment to come up after you have ran
|
|
"make install" - please skip to the end of the file and read the
|
|
"Setting Up Enlightenment For My User" information.
|
|
|
|
Basic Installation
|
|
==================
|
|
|
|
The `configure' shell script attempts to guess correct values for
|
|
various system-dependent variables used during compilation. It uses
|
|
those values to create a `Makefile' in each directory of Enlightenment.
|
|
It may also create one or more `.h' files containing system-dependent
|
|
definitions. Finally, it creates a shell script `config.status' that
|
|
you can run in the future to recreate the current configuration, a file
|
|
`config.cache' that saves the results of its tests to speed up
|
|
reconfiguring, and a file `config.log' containing compiler output
|
|
(useful mainly for debugging `configure').
|
|
|
|
If you need to do unusual things to compile Enlightenment, please try
|
|
to figure out how `configure' could check whether to do them, and mail
|
|
diffs or instructions to the address given in the `README' so they can
|
|
be considered for the next release. If at some point `config.cache'
|
|
contains results you don't want to keep, you may remove or edit it.
|
|
|
|
The file `configure.in' is used to create `configure' by a program
|
|
called `autoconf'. You only need `configure.in' if you want to change
|
|
it or regenerate `configure' using a newer version of `autoconf'.
|
|
|
|
The simplest way to compile this package is:
|
|
|
|
1. `cd' to the directory containing Enlightenment's source code and type
|
|
`./configure' to configure Enlightenment for your system. If you're
|
|
using `csh' on an old version of System V, you might need to type
|
|
`sh ./configure' instead to prevent `csh' from trying to execute
|
|
`configure' itself.
|
|
|
|
Running `configure' takes awhile. While running, it prints some
|
|
messages telling which features it is checking for.
|
|
|
|
2. Type `make' to compile Enlightenment.
|
|
|
|
3. Optionally, type `make check' to run any self-tests that come with
|
|
Enlightenment.
|
|
|
|
4. Type `make install' to install the programs and any data files and
|
|
documentation.
|
|
|
|
5. You can remove the program binaries and object files from the
|
|
source code directory by typing `make clean'. To also remove the
|
|
files that `configure' created (so you can compile Enlightenment for
|
|
a different kind of computer), type `make distclean'. There is
|
|
also a `make maintainer-clean' target, but that is intended mainly
|
|
for Enlightenment's developers. If you use it, you may have to get
|
|
all sorts of other programs in order to regenerate files that came
|
|
with the distribution.
|
|
|
|
Compilers and Options
|
|
=====================
|
|
|
|
Some systems require unusual options for compilation or linking that
|
|
the `configure' script does not know about. You can give `configure'
|
|
initial values for variables by setting them in the environment. Using
|
|
a Bourne-compatible shell, you can do that on the command line like
|
|
this:
|
|
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
|
|
|
|
Or on systems that have the `env' program, you can do it like this:
|
|
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
|
|
|
|
Compiling For Multiple Architectures
|
|
====================================
|
|
|
|
You can compile Enlightenment for more than one kind of computer at the
|
|
same time, by placing the object files for each architecture in their
|
|
own directory. To do this, you must use a version of `make' that
|
|
supports the `VPATH' variable, such as GNU `make'. `cd' to the
|
|
directory where you want the object files and executables to go and run
|
|
the `configure' script. `configure' automatically checks for the
|
|
source code in the directory that `configure' is in and in `..'.
|
|
|
|
If you have to use a `make' that does not supports the `VPATH'
|
|
variable, you have to compile Enlightenment for one architecture at a time
|
|
in the source code directory. After you have installed Enlightenment for
|
|
one architecture, use `make distclean' before reconfiguring for another
|
|
architecture.
|
|
|
|
Installation Names
|
|
==================
|
|
|
|
By default, `make install' will install Enlightenment's files in
|
|
`/usr/local/enlightenment/bin', `/usr/local/man', etc. You can specify an
|
|
installation prefix other than `/usr/local' by giving `configure' the
|
|
option `--prefix=PATH'.
|
|
|
|
Enlightenment, by default, will place all of its files in a subdirectory of
|
|
the prefix that you supply named "enlightenment" - this breaks the fsstd. If
|
|
you are a diehard fsstd fan, you can override this by using the
|
|
`--enable-fsstd' option on your configure line.
|
|
|
|
You can specify separate installation prefixes for
|
|
architecture-specific files and architecture-independent files. If you
|
|
give `configure' the option `--exec-prefix=PATH', Enlightenment will use
|
|
PATH as the prefix for installing programs and libraries.
|
|
Documentation and other data files will still use the regular prefix.
|
|
|
|
|
|
Optional Features
|
|
=================
|
|
|
|
Some packages pay attention to `--enable-FEATURE' options to
|
|
`configure', where FEATURE indicates an optional part of Enlightenment.
|
|
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
|
|
is something like `gnu-as' or `x' (for the X Window System).
|
|
|
|
`configure' can usually find the X include and library files automatically,
|
|
but if it doesn't, you can use the `configure' options `--x-includes=DIR' and
|
|
`--x-libraries=DIR' to specify their locations.
|
|
|
|
You can choose to enable and/or disable sound at compiletime by using
|
|
`--enable-sound=[yes|no]' - if you choose to enable sound, you should download
|
|
the latest versions of esound and libaudiofile. Information on these packages
|
|
can be retreived at http://www.gnome.org
|
|
|
|
Specifying the System Type
|
|
==========================
|
|
|
|
There may be some features `configure' can not figure out
|
|
automatically, but needs to determine by the type of host Enlightenment
|
|
will run on. Usually `configure' can figure that out, but if it prints
|
|
a message saying it can not guess the host type, give it the
|
|
`--host=TYPE' option. TYPE can either be a short name for the system
|
|
type, such as `sun4', or a canonical name with three fields:
|
|
CPU-COMPANY-SYSTEM
|
|
|
|
See the file `config.sub' for the possible values of each field. If
|
|
`config.sub' isn't included in this package, then this package doesn't
|
|
need to know the host type.
|
|
|
|
If you are building compiler tools for cross-compiling, you can also
|
|
use the `--target=TYPE' option to select the type of system they will
|
|
produce code for and the `--build=TYPE' option to select the type of
|
|
system on which you are compiling Enlightenment.
|
|
|
|
Sharing Defaults
|
|
================
|
|
|
|
If you want to set default values for `configure' scripts to share,
|
|
you can create a site shell script called `config.site' that gives
|
|
default values for variables like `CC', `cache_file', and `prefix'.
|
|
`configure' looks for `PREFIX/share/config.site' if it exists, then
|
|
`PREFIX/etc/config.site' if it exists. Or, you can set the
|
|
`CONFIG_SITE' environment variable to the location of the site script.
|
|
A warning: not all `configure' scripts look for a site script.
|
|
|
|
Operation Controls
|
|
==================
|
|
|
|
`configure' recognizes the following options to control how it
|
|
operates.
|
|
|
|
`--cache-file=FILE'
|
|
Use and save the results of the tests in FILE instead of
|
|
`./config.cache'. Set FILE to `/dev/null' to disable caching, for
|
|
debugging `configure'.
|
|
|
|
`--help'
|
|
Print a summary of the options to `configure', and exit.
|
|
|
|
`--quiet'
|
|
`--silent'
|
|
`-q'
|
|
Do not print messages saying which checks are being made. To
|
|
suppress all normal output, redirect it to `/dev/null' (any error
|
|
messages will still be shown).
|
|
|
|
`--srcdir=DIR'
|
|
Look for Enlightenment's source code in directory DIR. Usually
|
|
`configure' can determine that directory automatically.
|
|
|
|
`--version'
|
|
Print the version of Autoconf used to generate the `configure'
|
|
script, and exit.
|
|
`--enable-fsstd'
|
|
Install Enlightenment in what is considered to be the "filing system
|
|
standard" way. This means binaries will be put in /usr/local/bin
|
|
or /usr/bin (PREFIX/bin) and data files in /usr/local/share/enlightenment
|
|
or /usrlshare/enlightenment (PREFIX/share/enlightenment), instead of the
|
|
default where Enlightenemnt installs all files in /usr/local/enlightenment
|
|
(PREFIX/enlightenment).
|
|
`--prefix=PREFIX'
|
|
Set the install prefix to PREFIX. By befault this prefix is /usr/local
|
|
but you may change it (for example for many distribtuions you may wish to
|
|
use /usr as your prefix).
|
|
`configure' also accepts some other, not widely useful, options.
|
|
|
|
Setting Up Enlightenment For My User
|
|
====================================
|
|
|
|
Hopefully by now, you've gotten Enlightenment compiled and installed on your
|
|
system. In order to set up Enlightenment to act as your primary window
|
|
manager, you'll need to edit some files. If you start X from the commandline
|
|
(typically using a command like `startx') look for a file in your home
|
|
directory called `.xinitrc'. If you start X from a graphical login manager,
|
|
look in your home directory for a file called `.xsession'. If you can't find
|
|
these files, that's okay, you can create a new one. Open up the appropriate
|
|
file.
|
|
|
|
If you have a pre-existing file, look for the line that looks something like
|
|
this:
|
|
|
|
exec fvwm
|
|
|
|
It should be the last line in the file. Replace this line with something that
|
|
looks like this:
|
|
|
|
exec /usr/local/enlightenment/bin/enlightenment
|
|
|
|
(where /usr/local/enlightenment is where you installed the source -- this is
|
|
the default location... if you used --enable-fsstd it would be /usr/local/bin)
|
|
|
|
If you had no file, just create one with that information in it.
|
|
That's all we have to do to these files! Just save and quit the file.
|
|
Once you've done that, make sure you've made the file executable (some systems
|
|
require this). You can do this by simply running
|
|
|
|
`chmod +x .xsession'
|
|
or
|
|
`chmod +x .xinitrc'
|
|
|
|
And then we're done! The next time you start up X as your user, you should be
|
|
in Enlightenment!
|
|
|
|
If you have more questions on installation, please join the mailing list. see
|
|
http://www.enlightenment.org/mail.html for more details.
|
|
|
|
Setting Up Enlightenment To Work with GNOME
|
|
===========================================
|
|
|
|
By default, Enlightenment supports all of the GNOME hints. However, if you
|
|
want to run GMC you may notice that clicking on the root window does not
|
|
always have the desired effect (for dragging icons, GMC's root menus, etc).
|
|
If you want to use GMC with enlightenment, there are a couple of options. You
|
|
can use alt+leftmouse and alt+rightmouse to use the GMC root menus. Or, you
|
|
can edit the keybindings.cfg file to remove the bindings for your left and right
|
|
mousebuttons. There is a copy of keybindings.cfg that will do this for you
|
|
that comes with enlightenment. in /path/to/enlightenment/configs/
|
|
copy the keybindings.gmc.cfg into your ~/.enlightenment directory. When you
|
|
restart, you will no longer have the left and right mousebuttons bound to
|
|
enlightenment. To modify your system configuration, copy over the
|
|
keybindings.cfg file in that directory. For your convenience, there is a
|
|
keybindings.nogmc.cfg in case you want to reverse this change at a later date.
|
|
NOTE: you may choose to use virtual areas instead of virtual desktops since
|
|
GMC does not handle clicks anywhere on the root window on desktops other than
|
|
0.
|
|
If you want to start enlightenment from gnome-session, you should use the
|
|
gnome control-panel to select the new enlightenment as your window manager.
|
|
Warning: Enlightenment is slower when run from a session manager. You should
|
|
opt to run enlightenment and have enlightenment be your session manager
|
|
instead of running gnome-session. You can start "panel" and "gmc" by hand and
|
|
have enlightenment relaunch them as the preferred launch method. To do this,
|
|
once you have launched them by hand, alt-rightclick on them, select "Remember"
|
|
and then choose "Restart Application on Login".
|
|
|
|
Setting Up Enlightenment To Work with KDE
|
|
=========================================
|
|
|
|
By default, Enlightenment does not support the KDE hints. You can turn them
|
|
on easily through your settings menus, however. If you want to add support
|
|
automatically upon launch (which can be disabled by the autosaved user
|
|
configuration) then copy the control.kde.cfg to the ~/.enlightenment directory
|
|
and rename it to control.cfg. If you are doing this after launching
|
|
enlightenment for the first time, you will want to remove the line from your
|
|
~/.enlightenment/...e_session.XXXXXX file that looks like:
|
|
1366 0
|
|
simply remove that line and start up enlightenment again.
|
|
If your "KDE Support" settings panel still show KDE support turned on, then
|
|
you can simply check the box there, and KDE support will remain on.
|
|
You can launch kpanel and/or kfm from your .xsession or .xinitrc files and
|
|
they will work correctly. If you want to edit the startkde script
|
|
(system-wide configuration change) find the line that contains kwm and replace
|
|
it with /path/to/enlightenment.
|
|
|