-Note for CVS checkouts
-----------------------
-
-If you have checked this out from CVS, you need to have
-automake, autoconf, and gettext installed. Then,
-type "./autogen.sh" to build the needed configuration
-files and proceed as stated below.
-
Compiling and installing LyX
============================
if you want a smaller binary.
+Note for CVS checkouts
+----------------------
+
+If you have checked this out from CVS, you need to have
+automake, autoconf, and gettext installed. 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
------------
-You will need to have both an Xforms library and Xpm library to compile
-LyX. It is imperative that you have the correct versions of these
+First of all, you will also need a recent C++ compiler, where recent
+means that the compilers are close to C++ standard conforming.
+Compilers that are known to compile LyX are egcs 1.1.x, gcc 2.95.x and
+later, and Digital C++ version 6.1 and later. Please tell us your
+experience with other compilers. It is _not_ possible to compile LyX
+with gcc 2.7.x and 2.8.x, and this is not likely to change in the
+future.
+
+Note that, contrary to LyX 1.0.x, LyX 1.2.x 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.
+
+Both an Xforms and Xpm libraries should be installed to compile LyX.
+It is imperative that you have the correct versions of these
libraries, and their associated header files.
-As of LyX version 1.1.5, you will need to have Xforms library and
-header version 0.88 or 0.89. Version 0.88 is a stable release and the
-recommended version, but 0.89.6 seems to be work very well too. On
-some systems, such as linux ELF, there are shared library versions of
-the Xforms library, which require an installation step to configure
-the system.
+As of LyX version 1.2.0, you will need to have Xforms library and
+header version 0.88 or 0.89. Version 0.89.6 is the one which works
+best, but the old stable 0.88.1 version is still supported. On some
+systems, such as linux ELF, there are shared library versions of the
+Xforms library, which require an installation step to configure the
+system.
Xforms is available (free) only in binary format, source code is not
available. If it is not available for your machine, contact the Xforms
ftp://ftp.fu-berlin.de/unix/X11/gui/xforms
ftp://ftp.cs.ruu.nl/pub/XFORMS/
-In addition, you must have libXpm version 4.7 (or newer; 4.8 rumoured
-to work).
+If you use a rpm-based linux distribution, such as RedHat or Mandrake,
+we recommend that you grab a version of xforms from
+ ftp://ftp.lyx.org/pub/lyx/contrib
+as the rpm packages commonly found are compiled against glibc 2.0
+instead of 2.[12], and this causes occasional crashes.
-To use the thesaurus, you will need to install libAikSaurus, available
-from :
-
- http://aiken.clan11.com/aiksaurus/
-
-You will also probably need GNU m4 (perhaps installed as gm4).
-
-libXpm can be found at:
- http://www.funet.fi/pub/Linux/sunsite/X11/libs/!INDEX.html
- (or similar locations at other sunsites like sunsite.unc.edu)
-
-You will also need a recent C++ compiler, where recent means that the
-compilers are close to C++ standard conforming. Compilers that are
-known to compile LyX are egcs 1.1.x, gcc 2.95.x and later, and Digital
-C++ version 6.1 and later. Please tell us your experience with other
-compilers. It is _not_ possible to compile LyX with gcc 2.7.x and
-2.8.x, and this is not likely to change in the future.
-
-Note that, contrary to LyX 1.0.x, LyX 1.1.x 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.
+In addition, you must have libXpm version 4.7 or newer.
If you make modifications to files in src/ (for example by applying a
patch), you will need to have the GNU gettext package installed, due
LyX contains a hack to work around this, but you should not rely too
much on it.
+To use the thesaurus, you will need to install libAikSaurus, available
+from :
+ http://aiken.clan11.com/aiksaurus/
+
Finally, the two following programs should be available at
configuration time:
the machine on which LyX is built is not the one where it will
run).
- o LaTeX2e should be correctly setup for the user you are logged
+ 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 Option->Configure.
+ that users can run these tests manually with Edit>Reconfigure.
Creating the Makefile
the compilation of LyX. Opposite is --disable-warnings. By default,
this flag is on for development versions only.
- o --enable-assertions that make the compilier generater run-time
+ o --enable-assertions that make the compiler generate run-time
code which checks that some variables have sane values. Opposite
is --disable-assertions. By default, this flag is on for
development versions only.
flag, please report it as a bug.
o --without-liberty suppresses the detection of the -liberty library
- (see the section 'Problems').
+ (see the section `Problems').
Compiling and installing LyX
All should be OK ;)
Since the binaries with debug information tend to be huge (although
-this does not affect the run-time memory footprint), you maight want
+this does not affect the run-time memory footprint), you might want
to strip the lyx binary. In this case replace "make install" with
make install-strip
------------------------------------------------------
o Compile LyX with the right compiler switches for your
- architecture. In particular you might want to ensure that
- libraries like xforms and xpm are statically linked. To this end,
- you can use a command like
-
- make LYX_LIBS='/foo/libforms.a /bar/libXpm.a'
-
- Moreover, make sure you use the --without-latex-config switch
+ architecture. Make sure you use the --without-latex-config switch
of configure, since others might not be interested by your
- configuration :-)
+ configuration :-)
o Create a file README.bin describing your distribution and
referring to *you* if problems arise. As a model, you can use the
Angus Leeming <leeming@lyx.org> for details.
Angus 22 March, 2002.
- o According to John Collins <collins@phys.psu.edu>, on SunOS 4.1.3 you may
- find two sets of X libraries, and they are of course incompatible :-)
- One is the set provided as part of OpenWindows, and one is the standard
- X distribution (e.g., X11R5). If you encounter problems (or if, for
- some obscure reasons configure cannot find your X libraries) you can
- use the following options:
-
- o --x-libraries=DIRECTORY that indicates where the X libraries reside.
-
- o --x-includes=DIRECTORY that indicate where the X include files reside.
-
- The standard X11R5 libraries should work when the OpenWindows ones
- don't.
-
o Some systems lack functions that LyX needs. To fix this, configure
tries to link against the -liberty library, if it is available.
If you experience problems with missing symbols at link time, you
LDFLAGS = -L/opt/aCC/lib # perhaps not needed.
- o On Digital Unix with gcc, you can get warnings like
-
-warning, LyXFamilyNames not found in original or external symbol tables, value defaults to 0
-
- These concern symbols beginning with an uppercase letter and seems
- to be harmless. Similarly, the compilation can end with the
- following warning:
-
-/bin/ld:
-Warning: Linking some objects which contain exception information sections
- and some which do not. This may cause fatal runtime exception handling
- problems (last obj encountered without exceptions was ../intl/libintl.a).
-
-
- You can safely ignore it.
-
really begin to pay off. It should prove to be a very solid base for
further developments. As of this version, we use (yet another) new
versioning scheme: next major version will be 1.3.0, and 1.2.x will
-be just incremental fixes (like the fix series used to be for 1.1.5
+be just incremental fixes (like the `fix' series used to be for 1.1.5
and 1.1.6).
This version sees the introduction of the so-called `new' insets,
are now possible:
- Floats, footnotes and margin notes are now real insets. The
- positional parameters of figure, table and algorith, floats can be set
+ positional parameters of figure, table and algorithm floats can be set
float-by-float
-- Most problems with the new table inset of 1.1.6 have been resolved
- (memory consumption, spell-checking, search and replace...)
+- Most problems with the new table inset of 1.1.6 have been addressed
+ (memory consumption, file bloat, spell-checking, search and replace...).
+ Better longtable header/footer support was implemented.
- TeX mode has been superseded by the ERT inset, which is foldable, or
can be shown inline
- New minipage inset
+Note that another consequence of this change is that older LyX version
+will almost certainly fail to read files produced by LyX 1.2.0.
+
Other more traditional insets have been improved too:
cleanup, but it turns out that many new features happened in this
process, among which:
-- possibility to display arbitrary TeX symbols as long as the fonts are
- made available to the X server
+- possibility to display all standard latex and amsmath symbols (and
+ also the \mathcal, \mathbb, and \mathfrak fonts)as long as the
+ relevant fonts have been made available to the X server
- support for many amsmath features
+ Commands: xrightarrow, xleftarrow, substack, underset, dddot
+ over/under arrows (e.g. underleftarrow).
+ Environments: align, alignat, xalignat, xxalignat, multline, gather
+ split, gathered, aligned, cases, subarray, pmatrix, bmatrix, vmatrix,
+ Vmatrix
+
+- Preliminary support for xymatrix
+
+- Support for horizontal and vertical lines in arrays.
- Improvements to the parser
- Enable size changes to arrays after creation (add/delete rows/columns)
-- Support for changing font on a selection
+- Support for changing font or displaystyle on a selection
+
+- GUI support provided for many more features
Other changes include:
-- Most of the popups have been rewritten in the GUI-I framework, and
+- Support for windows with cygwin has been incorporated into the main
+ distribution.
+
+- Most of the dialogs have been rewritten in the GUI-I framework, and
improved in the process
- The kde frontend has been dropped in favor of a new qt2 frontend.
Note that only the xforms front is really operational as of this
- version and alternative fontends are expected for 1.3.0
+ version and alternative frontends are expected for 1.3.0
- The citation dialog has a search facility, with support for regular
expressions.
In September of 1999 the LyX Team decided that we could no
longer successfully use the two strand development process
- like the Linux kernel. We are in the process of switching to a
- development model similar to that used by Fetchmail where we
- will only make small stable changes between releases and
- release more often. All future releases should be stable
- although we are currently in a transition period where some
- major changes have to be introduced and are likely to affect
- the stability in the short term.
-
- These changes include:
-
- * Use of C++ Standard Library features such as the Standard
- Template Library (STL), string and streams.
-
- * Establishing the foundations of GUI/system independence,
-
- * Rearrangement of the directory structure.
-
- Once the transition is over the 1.1 series should be very
- stable and we will then release 1.2.0. This new series will be
- in a state of continual advancement. Note the word
- "advancement" and not "development." Development will be
- occurring in branches of CVS and once the feature/modification
- has proved stable it will be merged into the main releases.
-
- LyX now uses a continuous numbering scheme where odd or
- even numbering is no longer significant. Prereleases are
+ like the Linux kernel. The idea was to to switch to a
+ development model similar to that used by Fetchmail where only
+ we would will only make small stable changes between releases
+ and release more often. This lead to the 1.1.x series of LyX
+ releases where the inhards of the program have been rewritten
+ to make use of the C++ Standard Library features, establish
+ the foundations of GUI/system independence, and generally
+ clean up the data structures used in the core of LyX.
+
+ As of April 2002, this transition phase is completed and we
+ feel it is time to switch to (yet) another version scheme.
+ This new series will be in a state of continual advancement.
+ Note the word "advancement" and not "development." Development
+ will be occurring in branches of CVS and once the
+ feature/modification has proved stable it will be merged into
+ the main releases.
+
+ LyX still uses a continuous numbering scheme where odd or
+ even numbering is not significant. Prereleases are
labeled with a "pre" suffix and any fixes required between
stable releases have a "fix" suffix. Thus there are three
possible file names:
- lyx-1.1.5.tar.gz -- stable release
- lyx-1.1.5fix2.tar.gz -- bug fix of the 1.1.5 stable release.
- lyx-1.1.5pre1.tar.gz -- potentially unstable test release
+ lyx-1.2.0.tar.gz -- stable release
+ lyx-1.2.2.tar.gz -- second maintenance release of the
+ 1.2.0 stable release
+ lyx-1.2.0pre1.tar.gz -- potentially unstable test release
- The fix releases contain no new functionality; only fixes that
- have already made their way into the cvs repository.
+ The maintenance releases are designed mainly to fix bugs. The
+ goal here is not to have parallel development as for the linux
+ kernel (the team is too small to afford that), but rather to
+ include all the simple (so that the maintenance burden on us
+ is not too high) and safe (so that system administrators can
+ install them without fear) bug fixes. Experience shows that
+ these releases will contain a few new features, and that the
+ bulk of the patches will be documentation updates.
What is LyX?
What do I need to run LyX?
- A Unix-like system or OS/2 with XFree
+ A Unix-like system or Windows with cygwin, OS/2 with XFree
At least X11 Release 5
A decent LaTeX2e installation (e.g. teTeX or NTeX) not older
than 1995/12/01
- Optionally ghostscript and ghostview (or compatible)
- - note that ghostscript versions 6.22 through 6.52
- won't render inline figures in LyX. This is due to
- a ghostscript bug.
Perl5.002 or later to import LaTeX files into LyX
What's new?
What do I need to compile LyX from the source distribution?
1. A good c++ compiler. Development is being done mainly on
- gcc/g++, but many others work.
- 2. The Xforms library version 0.88 (recommended) or 0.89.
+ gcc/g++, but some others work. As of LyX 1.2.0, you need at
+ least gcc 2.95.X (or egcs 1.1.x). Another compiler known to
+ work is compaq cxx 6.1.
+ 2. The Xforms library version 0.89.6 (recommended) or 0.88.1.
3. LibXpm version 4.7 (or newer).
Read the file "INSTALL" for more information on compiling.
as LyX sees it. You might be missing a package or two that you'd
like to have.
- User-level configuration is possible with a file "~/.lyx/lyxrc".
- You can use the system-wide lyxrc file (which should be somewhere
- like /usr/local/share/lyx/lyxrc) as a template for your personal
- lyxrc file. Remember that a personal configuration file will be
- used instead of, not in addition to, any system-wide file.
+ User-level configuration is possible via the Edit>Preferences menu.
Does LyX have support for non-English speakers/writers/readers?