In addition, you must have libXpm version 4.7 or newer.
+Note that the Qt and Gnome frontends are still under development, and
+as a result are only useful if you want to help out with testing and
+development.
+
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
to some dependencies in the makefiles. You can find the latest version
the same system. You can optionally specify a "version" of your own,
by doing something like : ./configure --with-version-suffix=-latestcvs
+ Note that the standard configure options --program-prefix,--program-suffix
+ and the others will not affect the shared LyX directory etc. so it
+ is recommended that you use --with-version-suffix (or --prefix) instead.
+
o --enable-optimization=VALUE enables you to set optimization to a
higher level as the default (-O), for example --enable-optimization=-O3.
then you need to upgrade the version of the xforms library you have
installed.
- o It is possible to compile lyx with Tru64 Unix cxx compiler
- version 6.2, provided one uses
- CXX='cxx -std strict_ansi'
- CXXFLAGS='-ptr /tmp/lyx_cxx_repository -g'
- CC=cc
-
- Note that this will not work when compiling directly from the cvs
- repository, due to the tricks used by automake for dependencies. Ask
- Jean-Marc.Lasgouttes@inria.fr for a workaround.
-
- Or rather, it may well work if you are using automake 1.5 and autoconf 2.5
- or greater, but you'll have to patch automake's depcomp first. (Depcomp
- is a little shell script to automagically work out file dependencies
- and it's broken for automake 1.5 and Tru64 :-(). The patch is to be found
- in config/depcomp.diff.
- Angus 22 March, 2002.
-
- o On Tru64 Unix, you may have to compile with
- --with-included-string to work around a Tru64 linker limitation
- (the STL string template creates names which may be too long). We
- also had reports that it helps with gcc 2.95.2 on solaris 2.6.
-
- Using Tru64 Unix 4.0e, the std::string is fine.
- Angus 22 March, 2002.
-
- o On Tru64 Unix with cxx, you may have a compilation error in
- lyx_main.C if you have GNU gettext installed. This is due to a bug
- in gettext. To solve this, you can either (1) configure with
- --with-included-gettext or (2) add -D__STDC__ to cxx flags.
-
- o On Tru64 Unix 4.0e, the STL library routine std::count is broken
- (/usr/include/cxx/algorithm.cc, line 289 on my machine).
- It calculates "n" but does not return it! The fix is to add "return n;" to
- the end of the (4-line long) routine.
- Angus 22 March, 2002.
-
- o On Tru64 Unix 4.0e, compilation of support/lyxsum.C dies horribly. The
- work-around is to use the old version, 1.18, of this routine. Ask
- Angus Leeming <leeming@lyx.org> for details.
- Angus 22 March, 2002.
-
- 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
- could try to install libiberty.a, which comes with several GNU
- packages (in particular libg++). In any case, please report your
- problems to lyx-devel@lists.lyx.org.
-
- The option --without-liberty disable the detection of -liberty. It
- is meant for debugging purpose only.
+ o On solaris 2.6, you may have to compile with --with-included-string
+ if compiling with gcc 2.95.2.
o According to David Sundqvist <David_Sundqvist@vd.volvo.se>, some
changes are needed to compile with aCC on HP-UX 10.20. These are the
# which currently break.
LIBS = -lforms -lXpm -lSM -lICE -lc -lm -lX11 -lCsup # must link with Csup
- LDFLAGS = -L/opt/aCC/lib # perhaps not needed.
-
-
+ LDFLAGS = -L/opt/aCC/lib # perhaps not needed.
+
+ o LyX can be compiled on Tru64 Unix with either GNU's gcc or the default
+ Compaq cxx compiler.
+
+ There are no Alpha-specific problems with gcc.
+
+ The following notes all refer to compilation with the Compaq cxx compiler.
+
+ LyX cannot be compiled on Tru64 Unix 4.0d or 4.0e with the default cxx
+ compiler. You should upgrade to at least cxx V6.2, to be found at
+ ftp::/ftp.compaq.com/pub/products/C-CXX/tru64/cxx/CXX622V40.tar. Users
+ running Tru64 Unix 4.0f and greater should have no real problems compiling
+ LyX.
+
+ cxx V6.2 will compile LyX out of the box.
+ cxx V6.3-020 is also known to work, although there is a bug in
+ /usr/include/cxx/deque that will break compilation in FormPreferences.C.
+ Compaq are investigating, but a patch that works /now/ is:
+
+--- /usr/include/cxx/deque_safe Mon Mar 4 21:09:50 2002
++++ /usr/include/cxx/deque Mon Mar 4 21:09:00 2002
+@@ -570,9 +570,11 @@
+ {
+ if (size() >= x.size())
+ erase(copy(x.begin(), x.end(), begin()), end());
+- else
+- copy(x.begin() + size(), x.end(),
+- inserter(*this,copy(x.begin(),x.begin()+size(),begin())));
++ else {
++ const_iterator mid = x.begin() + difference_type(size());
++ copy(x.begin(), mid, begin());
++ insert(end(), mid, x.end());
++ }
+ }
+ return *this;
+ }
+
+ At the time of writing, cxx V6.5-026 is the latest cxx compiler. It is
+ /not/ recommended. Not only do the bugs in the system header files still
+ exist, but the compiler itself appears to be both buggy and extremely
+ bloated (trebles the size of the stripped LyX binary).
+
+ In order to compile LyX with the cxx compiler, you should run configure
+ with the following flags:
+ CXX='cxx -std strict_ansi'
+ CXXFLAGS='-nopure_cname -nocleanup -ptr /tmp/lyx_cxx_repository -O2'
+ CC='cc -std1'
+ The -nopure_cname flag is needed for compilers V6.3 and above because
+ LyX makes use of functions like popen, pclose that are defined in the
+ c version of <stdio.h> but are not formally part of any c/c++ standard.
+ They are not, therefore, included in the <cstdio> header file.