IMPORTANT : YOU NEED TO HAVE A ROOT ACCESS
TO INSTALL XFCE PROPERLY.
1) Requirements
1.a) Linux
XFce compiles out of the box on most Linux distributions. Although, some distributions do not provide the latest version for Xpm librariy (libXpm). On Debian, for exemple, you'll have to install xpm4g-dev and xpm4-altdev otherwise xfwm will core dump at startup.
You'll need the XForms library for your system (libc5 or libc6). Using the wrong library can cause some oddities such as wrong time displayed in XFce clock or directories full of "D.." !
1.b) SUN Solaris (tm)
To compile XFce on SUN Solaris, you'll need the GNU tools :
Of course, you'll also need XForms for Solaris.
2) Installing from a tar archive
Once you've retrieved the archives, ie two files that sounds like xfce-2.?.?.tar.gz and xfce-common-2.?.?.tar.gz,
Untar the source files :
3) Edit Imakefile to suit your system (if needed)
This point could be optional.. If you are new to Unix, first try without
editing the Imakefile
4) Edit definition file
The file called XFCE.def contains all default definitions for compiling XFce on Linux, SUN Solaris and FreeBSD.
XCOMM Definition options : Please edit !
XCOMM ==================================
#define LINUX
/* #define SOLARIS */
/* #define BSD */
#define STATIC
...
By commenting out the system name, you can select which target you want to build. This has no effect on the code itself, it just set the right compile options and directories for the selected system.
You can change these directories, or even add a new target system by changing/adding the following lines in XFCE.def :
XCOMM Compile options : Please check !
XCOMM ================================
...
#ifdef LINUX
XCOMM
XCOMM for LINUX
XCOMM
XFCE_SYSLIB = -L/usr/X11/lib -L/usr/X11R6/lib -L/usr/local/lib
STD_LIBRARIES = -lXext -lX11 -lXpm -lm
#ifdef STATIC
XFCE_EXTRA_LIBRARIES = $(USRLIBDIR)/libforms.a $(XFCE_SYSLIB) $(STD_LIBRARIES)
#else
XFCE_EXTRA_LIBRARIES = $(XFCE_SYSLIB) $(STD_LIBRARIES) -lforms
#endif
COMPILE_OPTIONS = -O -Wall $(EXTRA_INCLUDES) $(EXTRA_DEFINES)
LINK_OPTIONS = -O -s
#endif
#ifdef SOLARIS
...
#endif
#ifdef BSD
...
#endif
XCOMM BINDIR = /usr/local/bin
XFCE_DIR = /var/XFCE
XBINDIR = $(BINDIR)
XFCE_PAL = $(XFCE_DIR)/palettes
XFCE_BACKDROPS = $(XFCE_DIR)/backdrops
XFCE_HELP = $(XFCE_DIR)/help
XFCE_ICONS = $(XFCE_DIR)/icons
XFCE_SOUNDS = $(XFCE_DIR)/sounds
DESTDIR = $(RPM_BUILD_ROOT)
DEST_BIN = $(DESTDIR)$(XBINDIR)
DEST_XFCE = $(DESTDIR)$(XFCE_DIR)
DEST_PAL = $(DESTDIR)$(XFCE_PAL)
DEST_BACKDROPS = $(DESTDIR)$(XFCE_BACKDROPS)
DEST_HELP = $(DESTDIR)$(XFCE_HELP)
DEST_ICONS = $(DESTDIR)$(XFCE_ICONS)
DEST_SOUNDS = $(DESTDIR)$(XFCE_SOUNDS)
EXTRA_INCLUDES = -I/usr/local/include -I/usr/X11R6/include
-I/usr/X11R6/include/X11 -I.
EXTRA_DEFINES = -DXFCE_ICONS=\"$(XFCE_ICONS)\" -DXFCE_DIR=\"$(XFCE_DIR)\"\
-DXBINDIR=\"$(XBINDIR)\" -DXFCE_PAL=\"$(XFCE_PAL)\"\
-DXFCE_BACKDROP=\"$(XFCE_BACKDROPS)\"
CC=gcc
CFLAGS=$(COMPILE_OPTIONS)
LDOPTIONS=$(LINK_OPTIONS)
For example, you can change the default base directory for binaries to /usr/local/bin by uncommenting out (XCOMM)the line BINDIR = /usr/local/bin
5) Create all Makefiles
If you don't have Imake installed, then you can try with the one shipped
in the package or get the makefile that someone else used for your platform,
or even better, get Imake from ftp.x.org
!
6) Compile and install
To compile and install XFCE, just type
This would install XFCE, XFwm and XFbd so it can be run from the command line.
7) Do the same for xfce-common !
You have to perform actions 2 to 6 for xfce-common.
8) Choose your default language
Language is defined through the environment variable XFCE_LANG. This
can be set in your $HOME/.xinitrc startup file :