I just downloaded the CVS tree. I also downloaded and installed FreeType2
and intltools. I ran into several snags trying to build Dia.
The software versions I have are:
Linux 2.4.19
GTK+ 2.0.5
GLIB 2.0.4
FreeType 2.1.0
gettext 0.11.1
(I noticed that libxslt is not found on my system, is that important for Dia?)
The problems I had are described in sequence, here.
1) autogen.sh stopped with this:
checking for version of FreeType... grep: invalid option -- / Usage: grep
[OPTION]... PATTERN [FILE]... Try `grep --help' for more information.
grep: invalid option -- /
Usage: grep [OPTION]... PATTERN [FILE]... Try `grep --help' for more
information. grep: invalid option -- / Usage: grep [OPTION]... PATTERN
[FILE]... Try `grep --help' for more information. awk: cmd. line:1: BEGIN
{ printf "%d", ( * 1000 + ) * 1000 + ;} awk: cmd. line:1:
^ parse error .. ./configure: test: : integer expression expected
configure: error: Need FreeType library version 2.0.9 or higher, found ..
The problem comes from configure.in,
69: FREETYPE_INCLUDE=`freetype-config --cflags | cut -c3-'
70: FREETYPE_MAJOR=`grep '^#define FREETYPE_MAJOR' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3`
71:FREETYPE_MINOR=`grep '^#define FREETYPE_MINOR' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3`
72: FREETYPE_PATCH=`grep '^#define FREETYPE_PATCH' $FREETYPE_INCLUDE/freetype/freetype.h | cut -d' ' -f3`
73: FREETYPE_VERSION=`echo | awk "BEGIN { printf \"%d\", ($FREETYPE_MAJOR * 1000 + $FREETYPE_MINOR) * 1000 + $FREETYPE_PATCH;}"`
On line 69) it is assumed that 'freetype-config --cflags' produces a
result such as:
'-I/usr/X11R6/include/freetype2'
Unfortunately, on my system at least, 'freetype-config --cflags' produces:
'-I/usr/X11R6/include -I/usr/X11R6/include/freetype2'
2) If I patch around the above problem, autogen.sh stops again, this time
with:
Makefile:751: *** missing separator. Stop.
The problems traces back to a Makefile.am, line 16, which reads:
@INTLTOOL_DESKTOP_RULE@
I've searched for a file that defines the INTLTOOL_DESKTOP_RULE rule, and I
can't find it. I've read the intltools README file but I'm not sure what
inittools installation steps to do specifically for Dia.
3) If I patch around problem 2), make compiles everything (with a number of
warnings) but then stops with this:
/usr/lib/libpangoxft-1.0.so: undefined reference to `FT_Seek_Stream'
/usr/lib/libpangoxft-1.0.so: undefined reference to `FT_Get_Short'
/usr/lib/libpangoxft-1.0.so: undefined reference to `FT_Forget_Frame'
/usr/lib/libpangoxft-1.0.so: undefined reference to `FT_Access_Frame'
/usr/lib/libpangoxft-1.0.so: undefined reference to `FT_Get_Long'
collect2: ld returned 1 exit status
make[2]: *** [dia] Error 1
make[2]: Leaving directory `/root/cvsroot/dia/app' make[1]: ***
[all-recursive] Error 1
make[1]: Leaving directory `/root/cvsroot/dia' make: *** [all] Error 2
It appears that pango and freetype2 are out of step. But by now I've got
to stop this experimenting. For now I'll download Dia .90 and work with
that.
I started using Dia about 2 years ago on Windows. I'm looking forward to
using in on my Linux system. My main application is UML.
Thanks,
Bill Trenker
Kelowna BC Canada