1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172
|
--------------------------------------------------------------------
Building and installing Ipe on Unix
--------------------------------------------------------------------
Required components
-------------------
Before you can compile Ipe, you will need to have the following tools
and libraries:
* The Qt toolkit
You need to have version 4.2.0 or higher. Make sure you not only
have the runtime libraries but the development package as well.
Linux distributions provide both Qt 3 (packages 'qt' and
'qt-devel') and Qt 4 (packages 'qt4' and 'qt4-devel'). Ipe
requires at least Qt 4.2.
You can also install Qt 4.2 from sources available at
"www.trolltech.com".
The Ipe build process relies on "qmake", a Makefile-generation tool
that is part of Qt. You will need the version of qmake that comes
with Qt 4.2. On Fedora and probably other Linux distributions, the
program is called "qmake-qt4" (and "qmake" is the one from Qt 3).
If "qmake" is not on your path, check your Qt installation for its
location, and add it to your path.
* The compression library 'zlib'
Very likely you already have it on your system (check for the
include file "zlib.h"). If not, obtain it from "www.gzip.org/zlib"
and install it.
* The font library 'Freetype 2'
On Linux, you most likely already have this on your system.
Otherwise, you can probably install it as a binary package. If
not, install from the sources at "www.freetype.org".
Make sure your version of Freetype is at least 2.0.8. Ipe will not
compile with earlier versions. Also, Freetype versions 2.1.6 to
2.1.7 contain a bug that stops Ipe from working. Freetype 2.1.8
works fine.
Freetype can be one of the problematic parts of installing Ipe. If
compiling Ipe is successfull, but when running it, only empty boxes
are displayed instead of text, you very probably have a problem
with Freetype. If you compile a new version of Freetype for Ipe,
be careful that Ipe uses header files and library from the same
version. Ipe detects when header files and libary version do not
match and will tell you as soon as it tries to display any text.
* The 14 standard Postscript fonts
If you create text objects using the 14 standard Postscript fonts
(Times, Helvetica, Courier) the font doesn't need to be embedded in
the PDF file. Still, Ipe needs access to the font to display it on
the screen, and that's why you need to provide these 14 font files.
The fonts are probably already on your system, for instance in
subdirectories of "/usr/share/texmf/fonts/type1/urw", under the
names
ucrb8a.pfb ucrbo8a.pfb ucrr8a.pfb ucrro8a.pfb uhvb8a.pfb
uhvbo8a.pfb uhvr8a.pfb uhvro8a.pfb usyr.pfb utmb8a.pfb utmbi8a.pfb
utmr8a.pfb utmri8a.pfb uzdr.pfb
Identical fonts may also be in "/usr/share/fonts/default/Type1"
under the following names:
n019003l.pfb n019004l.pfb n019023l.pfb n019024l.pfb n021003l.pfb
n021004l.pfb n021023l.pfb n021024l.pfb n022003l.pfb n022004l.pfb
n022023l.pfb n022024l.pfb s050000l.pfb d050000l.pfb
Your system may have a fontmap file describing all the fonts on the
system in XML-format, similar to the supplied file
"tetex-fontmap.xml". If so, Ipe can directly read this file and
find the fonts, and all you need to do is to provide the path to
the fontmap.
If not, the supplied "tetex-fontmap.xml" may already be correct, if
you have a standard teTeX installation (most Linux distributions
do). If not, you can check for the location of the necessary
files, and create your own fontmap. If you use relative paths in
the fontmap, they are interpreted relative to the directory
containing the fontmap file.
Finally, you can take the path of least resistance, and download
"urw-fonts.zip" from the same place where you got Ipe. The
supplied "urw-fontmap.xml" works for these fonts unchanged.
* 'Pdflatex'
Ipe uses Pdflatex, a PDF-producing version of Latex, to convert
Latex source code to Postscript/PDF. Every modern TeX installation
includes it.
Configuring and building Ipe
----------------------------
There are some pieces of information you need to provide to the Ipe
build process by editing "src/config.pri".
If your Freetype include files (check for "ft2build.h") and library
("libfreetype.so") are not on the standard path, add the correct
paths. Note that many Linux distributions have a somewhat weird,
historically grown Freetype setup. Although "ft2build.h" is in
"/usr/include", you still need to add "/usr/include/freetype2" to your
include path. If your system has a directory "usr/include/freetype2",
this is probably the case on your system.
If your Zlib include file ("zlib.h") and library ("libz.so") are not
on the standard path, add the correct paths.
Finally, define the Ipe directory structure. Normally, you would only
have to define IPEPREFIX properly, depending on where you want
Ipe to be installed.
Indicate in IPEFONTMAP the path for "fontmap.xml" (if you are using a
system fontmap, indicate the correct path; if you are using/making one
specifically for Ipe place the fontmap in this location).
Indicate in IPEBROWSER the program you wish to use for viewing the
on-line manual. The user can later override all these definitions
using environment variables.
These steps will build Ipe:
cd src
qmake
make
make install
You may have to use "qmake-qt4" instead of "qmake" (see above). You
may need to do "make install" as root (depending on whether you have
write permission to the installation location).
If you have made a "fontmap.xml" for Ipe, move it into the location
you specified in "config.pri". In case you are using "urw-fonts.zip",
move "urw-fontmap.xml" to "IPEPREFIX/share/ipe/IPEVERS/fontmap.xml",
and unpack the 14 fonts from "urw-fonts.zip" into
"IPEPREFIX/share/ipe/IPEVERS/fonts" (assuming you haven't changed the
standard definition of IPEFONTMAP). Note that "make install" DOES NOT
install any fontmap -- you have to do this one step manually.
Note that the Ipe library is a shared library, and so your dynamic
linker has to find "libipe.so.*". If you have chosen a standard
library directory for IPELIBDIR, saying "ldconfig" (as superuser) will
be enough to run Ipe.
If you installed in a different location, such as "/opt/ipe-6.0", you
can make a small script called "ipe" like the following, and put it in
your path:
#!/bin/sh
export LD_LIBRARY_PATH="/opt/ipe-6.0/lib/:$LD_LIBRARY_PATH"
/opt/ipe-6.0/bin/ipe $* &
Alternatively, you could put links to the library in a standard
location (as superuser):
ln -f -s IPELIBDIR/lib* /usr/lib
ldconfig
Another alternative is to add IPELIBDIR to your system's standard
library path, usually by editing "/etc/ld.so.conf" and running
"ldconfig".
--------------------------------------------------------------------
|