<< | Page list | >>
Notes on compiling the development version of lyx (i.e. from cvs)
<< | CompileWikis | CompileDirNotes >>
- It takes a bit of space... over 500 MB ... You will get much less if you decide to not include debugging information by using the configure switch: --disable-debug
- It needs automake > 1.5 and autoconf > 2.54
- These notes assume that xforms is properly installed (for the xforms-version)
These notes assume you set some environment variables to save
typing. In my case I've created a module
(e.g. ) file that does this for me. If you
still want to follow these notes but don't feel like using my modules
file, see here for setting the EnvironmentVariables. To see
what branches there are, you can try looking
here. There are
also some notes on the directory structure (CompileDirNotes)
that is assumed.
Checking out a specific branch of the source code, starting from scratch
I first just add a module (here I use ):
module add lyx/devel/1.3.x-qt
Instructions common for qt and xforms frontend
mkdir -p $LYXDEVEL; cd $LYXDEVEL; | Create a workspace and go there, -p inhibits error messages |
cvs -d :pserver:anoncvs@anoncvs.us.lyx.org:/cvs/lyx login | Only if you need to login (password: lyx) |
cvs -d :pserver:anoncvs@anoncvs.us.lyx.org:/cvs/lyx co -d $LYXTAG -r $LYXTAG lyx-devel | Check out source (have coffee) |
cd $LYXDEVEL/$LYXTAG; ./autogen.sh | Run autogen.sh |
mkdir -p $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND | Create separate build directory |
cd $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND; | Go to build directory |
Instructions to configure for the different frontends
Frontend] | [Configure instruction |
Qt | ../configure --with-version-suffix --prefix=$LYXPREFIX --disable-libtool-lock --with-frontend=qt |
Xforms | ../configure --with-extra-prefix=/pkg/mdhacks/grp/util --with-version-suffix --prefix=$LYXPREFIX --disable-libtool-lock; |
Further instructions to build and install
mkdir -p $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND | Just in case... |
cd $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND; | Just in case... |
make; | Build |
strip $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND/src/lyx; | Strip debug informationl |
make install; | Install |
All in one
These commands are listed here so that I can copy&paste...
Without doing cvs update or using autogen.sh
- | Make build dir, configure and make |
Qt | mkdir -p $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND && cd $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND && ../configure --with-version-suffix --prefix=$LYXPREFIX --disable-libtool-lock --with-frontend=qt && make -j 5 |
Xforms | mkdir -p $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND && cd $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND && ../configure --with-extra-prefix=/pkg/mdhacks/grp/util --with-version-suffix --prefix=$LYXPREFIX --disable-libtool-lock && make -j 5 |
First doing cvs update -d and then autogen.sh
, but not installing
- | Updating files, autogen, configure and make |
Qt | mkdir -p $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND && cd $LYXDEVEL/$LYXTAG; cvs update -d && ./autogen.sh && cd $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND && ../configure --with-version-suffix --prefix=$LYXPREFIX --disable-libtool-lock --with-frontend=qt && make -j 5 |
Xforms | mkdir -p $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND && cd $LYXDEVEL/$LYXTAG; cvs update -d && ./autogen.sh && cd $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND && ../configure --with-extra-prefix=/pkg/mdhacks/grp/util --with-version-suffix --prefix=$LYXPREFIX --disable-libtool-lock && make -j 5 |
The option --enable-maintainer-mode makes it so that ./autogen etc isn't needed.
Compiling after lots of changes
When the code has changed substantially, you may have to follow the following steps to get it to compile:
cd $LYXDEVEL/$LYXTAG/cvs update -d;
# Update files, including any new directories
./autogen.sh
# Recreates some makefiles or something...
- Proceed as usual with configure etc.
If it still doesn't work, something might be left in one of the .deps/-directories. For instance, if the Qt frontend builds properly but not the xforms-frontend, then you can try to remove the .deps/-directories from the build-xforms/-directory.
This code does it for you (tcsh):
find $LYXDEVEL/$LYXTAG/build-$LYXFRONTEND -type d -name .deps -exec rm -rf {} \;
Checking out the documentation
The commands in the table below will check out the HEAD revision of the documentation to the directory:
/space/lyx-doc/HEAD
mkdir -p /space/lyx-doc; cd /space/lyx-doc; | Create a workspace and go there, -p inhibits error messages |
cvs -d :pserver:anoncvs@anoncvs.us.lyx.org:/cvs/lyx login | Only if you need to login (password: lyx) |
cvs -d :pserver:anoncvs@anoncvs.us.lyx.org:/cvs/lyx co -d HEAD lyxdoc | Check out latest documentation (have coffee...) |