These four steps will compile, test and install LyX:
- 0) Linux users beware: if compiling the Qt frontend, you need
- qt4 and qt4-devel packages of the same version to compile LyX.
-
- 1) ./configure
- configures LyX according to your system.
- When compiling for Qt, you may have to set
- --with-qt4-dir=<path-to-your-qt4-installation>
- if the environment variable QTDIR is not set.
+ 0) Linux users beware: You need qt4 and qt4-devel packages
+ of the same version to compile LyX.
+
+ In general, it is also recommended to have pkg-config
+ installed (the name might vary depending on your
+ distribution).
+
+ 1) ./configure configures LyX according to your system. You
+ may have to set --with-qt4-dir=<path-to-your-qt4-installation>
+ (for example, "--with-qt4-dir=/usr/share/qt4/") if the
+ environment variable QTDIR is not set and pkg-config is not
+ available.
+
See Note below if ./configure script is not present.
2) make
if you want a smaller binary.
-Note for Subversion (SVN) checkouts
+Note for Git checkouts
-----------------------------
-If you have checked this out from Subversion, you need to have:
-* automake >= 1.5
+If you have checked this out from Git, you need to have:
+* automake >= 1.8
* autoconf >= 2.59c
-* gettext >= 0.12
+* gettext >= 0.16.1
Then type "./autogen.sh" to build the needed configuration
files and proceed as stated below.
You will also probably need GNU m4 (perhaps installed as gm4).
+
Requirements
------------
First of all, you will also need a recent C++ compiler, where recent
means that the compilers are close to C++ standard conforming (gcc 4.x).
-LyX 1.6.x makes great use of C++ Standard Template Library (STL).
+LyX makes great use of C++ Standard Template Library (STL).
This means that gcc users will have to install the relevant libstdc++
library to be able to compile this version of LyX.
-LyX has been tested with Qt 4.2/3/4.x. For compilation you need to compile
-against at least Qt 4.2.2. The only special point to make is that you must
-ensure that both LyX and the Qt libraries are compiled with the same C++
-compiler.
-
-Note that if Qt is using Xft2/fontconfig, you may need to install the
-latex-xft-fonts package (at ftp://ftp.lyx.org/pub/lyx/contrib/) to get
-maths symbols displayed properly. To find out, type:
-
- ldd `which lyx` | grep fontconfig
+For full LyX usability we suggest to use at least Qt 4.6 which has been
+widely tested. For compilation you need to compile against at least
+Qt 4.2.2. The only special point to make is that you must ensure that both
+LyX and the Qt libraries are compiled with the same C++ compiler.
-at the console. Most recent distributions are known to use fontconfig.
+To build LyX with spell checking capabilities included you have to
+install at least one of the development packages of the spell checker
+libraries. See the RELEASE-NOTES for details.
-If, however, your version of Qt does not use fontconfig, then TeX
-fonts should be added to the font path. 'man xset' is your friend.
* Other things to note
from:
ftp://ftp.gnu.org/gnu/gettext/
-To use the thesaurus, you will need to install libAikSaurus, available
-from:
- http://aiksaurus.sourceforge.net/
-
The two following programs should be available at configuration time:
o LaTeX2e should be correctly setup for the user you are logged in
as. Otherwise, LyX will not be able to run a number of tests. Note
that users can run these tests manually with Tools>Reconfigure.
- o Python 2.3 or newer installed to be able to import older LyX files
+ o Python 2.4 or newer must be installed. Python is used for many
+ simple tasks that are executed by external scripts, such as the
+ automatic configuration step and the import of older LyX documents
with the lyx2lyx script (this script is called automatically when
- opening a file).
+ opening a file). Python 3.0 or later is not supported.
Creating the Makefile
./configure
-For more complicated cases, LyX configure takes the following specific
+For more complicated cases, LyX configure honors the following specific
flags:
- o --enable-build-type=[rel(ease), dev(elopment), pre(release)]
+ o --enable-build-type=[rel(ease), pre(release), dev(elopment), prof(iling), gprof]
allows to tweak the compiled code. The following table describes
the settings in terms of various options that are described later
- release prerelease development
- optimization -O2 -O2 -O
+ release prerelease development profiling gprof
+ optimization -O2 -O2 -O -O2 -O2
assertions X X
stdlib-debug X
concept-checks X X
warnings X X
- debug X X
+ debug X X X X
+ gprof X
The default are as follows in terms of version number
release: stable release (1.x.y)
The following options allow to tweak more precisely the generated code:
- o --enable-profiling instruments the code for use with the gprof
+ o --enable-gprof instruments the code for use with the gprof
profiler. The result are only meaningful in conjunction with
--enable-build-type=release.