Compiling TeXmacs from the source code

On this page, we explain how to compile TeXmacs from the source code on Unix-like systems, including MacOS and Windows with Mingw or Cygwin. In the case of Windows, you may first want to install the appropriate build environment and follow our instructions for compilation under Windows.

1.Verify the TeXmacs dependencies

Before you install TeXmacs on your system, you have to make sure that you have the other programs on which TeXmacs depends, namely:

Qt

A cross-platform library for the development of user interfaces.

Guile

The GNU implementation of Scheme, which is used as an extension language. Please note that as of Oct. 2013, Guile 2.x is not supported; you will need Guile 1.8.

Freetype2

A library for font rendering.

Some more software that you might wish to install for more functionality and better performance are Ghostscript, Aspell, Libiconv, Netpbm, ImageMagick and Sparkle or WinSparkle.

2.Download and unpack the source code

Download the latest version

Download the latest version of the source code, cd into the directory where you wish to compile TeXmacs and type

tar -zxvf TeXmacs-2.1.4-src.tar.gz

All files will be unpacked into the directory TeXmacs-2.1.4-src, which is the 'installation directory'.

Download the current development version

Since TeXmacs-1.0.7.1, the development of TeXmacs is done using the Subversion (SVN) concurrent versioning system. In order to download the current SVN version of TeXmacs in read-only mode, you should type the following in a console, while at a directory of your choice where the sources will be saved

svn co svn://svn.savannah.gnu.org/texmacs/trunk/src

Notice that you may also browse the current TeXmacs sources on the web. The TeXmacs website and several other things are also maintained through SVN; just replace src by web or misc in the above checkout command.

In order to commit changes to the SVN repository, you first need a user account on Savannah and send a request to join the TeXmacs developers team. You may then checkout and commit changes as described on the subversion page for TeXmacs. You may also use Savannah in order to submit patches to TeXmacs. A Git mirror of the main Subversion repository is maintained at Github.

3.Compile, install and run

TeXmacs supports the standard GNU compilation and installation procedure. Assuming that you logged yourself in as root (needed only for the install command), cd into the installation directory and type

./configure
make
make install

Warning. If you have both version 4 and version 5 of the Qt libraries installed in your system, compilation will fail unless you select the former. This can be done by preceding the above commands with export QT_SELECT=4 or setenv QT_SELECT 4 depending on your shell (you may need to make clean before).

The first command examines your particular system configuration. The second command launches the compilation. The last command installs TeXmacs in /usr/local. Under MacOS the recommended way is to run make MACOS_BUNDLE instead of make and make install. This will create a TeXmacs-2.1.4.app application bundle in ../distr which you can move and open as any other application. For other systems, if everything works fine with the commands above you should be able to run TeXmacs by typing

texmacs &

If this does not work you should make sure that /usr/local/bin is in your PATH. Depending on your shell, you can ensure this by typing

export PATH=/usr/local/bin:$PATH

or

setenv PATH /usr/local/bin:$PATH

4.Configuration and build options

If you cannot log yourself in as root, or if you want to install TeXmacs elsewhere than in /usr/local, then you should use

./configure --prefix=[target directory]

instead of ./configure. In this case, TeXmacs will be installed in [target directory] and you will have to set your PATH accordingly, as to contain [target directory]/bin.

The configuration method

./configure --disable-qt

allows you to build the historical X11 version of TeXmacs instead of the Qt-based version. For more configuration options, type ./configure –help. For systems where both Guile 1.8 and 2.0 are installed you may use the following command for configuration:

./configure \
GUILE_CFLAGS="‘pkg-config --static --cflags guile-1.8‘" \
GUILE_LDFLAGS="‘pkg-config --static --libs guile-1.8‘" \
GUILE_DATA_PATH="‘pkg-config --variable=datadir guile-1.8‘" \
GUILE_VERSION="‘pkg-config --modversion guile-1.8‘"

For more build methods, please look at the Makefile.

5.Happy TeXmacs-ing!

If you like the program, then please consider donating money or services to us. Of course, you may also contribute yourself. In case of problems, please subscribe to the texmacs-dev or texmacs-users mailing lists and ask your questions there. You may also directly contact us, but you might need to be more patient.