Freetype problem

I’m using Debian woody 2.4.22 kernel on a P4 computer.

While trying to install root I’m having some problems with the added freetype library. After doing “configure linuxdeb” The message I get for “make debian” is this: (the message I get for “make” is quite similar, still having the same problem)


.
.
.
*** Building freetype/src/freetype-2.1.3/objs/.libs/libfreetype.a…
make[2]: Entering directory `/home/lancelot/root-3.10.00/freetype/src/freetype-2.1.3’
./builds/unix/configure --with-pic CC= CFLAGS=" -O2"
checking build system type… i686-pc-linux-gnu
checking host system type… i686-pc-linux-gnu
checking target system type… i686-pc-linux-gnu
checking for gcc… gcc
checking for C compiler default output… a.out
checking whether the C compiler works… yes
checking whether we are cross compiling… no
checking for suffix of executables…
checking for suffix of object files… o
checking whether we are using the GNU C compiler… yes
checking whether gcc accepts -g… yes
checking how to run the C preprocessor… gcc -E
checking for rm… rm -f
checking for rmdir… rmdir
checking for a BSD-compatible install… /usr/bin/install -c
checking for ANSI C header files… yes
checking for sys/types.h… yes
checking for sys/stat.h… yes
checking for stdlib.h… yes
checking for string.h… yes
checking for memory.h… yes
checking for strings.h… yes
checking for inttypes.h… yes
checking for stdint.h… yes
checking for unistd.h… yes
checking fcntl.h usability… yes
checking fcntl.h presence… yes
checking for fcntl.h… yes
checking for unistd.h… (cached) yes
checking for gcc option to accept ANSI C… none needed
checking for an ANSI C-conforming const… yes
checking for int… yes
checking size of int… 4
checking for long… yes
checking size of long… 4
checking for stdlib.h… (cached) yes
checking for unistd.h… (cached) yes
checking for getpagesize… yes
checking for working mmap… yes
checking whether munmap must be declared… no
checking for munmap’s first parameter type… void *
checking for memcpy… yes
checking for memmove… yes
checking for ld used by GCC… /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld… yes
checking for /usr/bin/ld option to reload object files… -r
checking for BSD-compatible nm… /usr/bin/nm -B
checking whether ln -s works… yes
checking how to recognise dependant libraries… pass_all
checking command to parse /usr/bin/nm -B output… ok
checking dlfcn.h usability… yes
checking dlfcn.h presence… yes
checking for dlfcn.h… yes
checking for ranlib… ranlib
checking for strip… strip
checking for objdir… .libs
checking for gcc option to produce PIC… -fPIC
checking if gcc PIC flag -fPIC works… yes
checking if gcc static flag -static works… yes
checking if gcc supports -c -o file.o… yes
checking if gcc supports -c -o file.lo… yes
checking if gcc supports -fno-rtti -fno-exceptions… yes
checking whether the linker (/usr/bin/ld) supports shared libraries… yes
checking how to hardcode library paths into programs… immediate
checking whether stripping libraries is possible… yes
checking dynamic linker characteristics… GNU/Linux ld.so
checking if libtool supports shared libraries… yes
checking whether to build shared libraries… yes
checking whether to build static libraries… yes
checking whether -lc should be explicitly linked in… no
creating libtool
configure: creating ./config.status
config.status: creating unix-cc.mk
config.status: creating unix-def.mk
config.status: creating freetype-config
config.status: creating ftconfig.h

FreeType build system – automatic system detection

The following settings are used:

platform unix
compiler cc
configuration directory ./builds/unix
configuration rules ./builds/unix/unix.mk

If this does not correspond to your system or settings please remove the file
`config.mk’ from this directory then read the INSTALL file for help.

Otherwise, simply type `/usr/bin/make’ again to build the library.

make[2]: Nothing to be done for unix'. make[2]: Leaving directory/home/lancelot/root-3.10.00/freetype/src/freetype-2.1.3’
make[2]: Entering directory /home/lancelot/root-3.10.00/freetype/src/freetype-2.1.3' config.mk:21: /unix-def.mk: No such file or directory config.mk:22: /unix-cc.mk: No such file or directory builds/freetype.mk:206: no file name forinclude’
make[2]: *** No rule to make target /unix-cc.mk'. Stop. make[2]: Leaving directory/home/lancelot/root-3.10.00/freetype/src/freetype-2.1.3’
make[1]: *** [freetype/src/freetype-2.1.3/objs/.libs/libfreetype.a] Error 2
make[1]: Leaving directory `/home/lancelot/root-3.10.00’
make: *** [build-stamp] Error 2
debuild: fatal error at line 456:
dpkg-buildpackage failed!
make: *** [debian] Error 29


I have no idea why this problem occurs and all my attempts at fixing it failed. Has anyone seen this kind of thing before? What can I do to fix/bypass it?

Which version did you import? 3.05/07? 3.10/00?
from CVS? the tar file?
could you do
make distclean
make

Rene Brun

I’ve tried both 3.05/07 and 3.10/00 (tar file) to no avail. Tried “make distclean; make” many times… didn’t work. I even got the freetype2 package installed, but apparently it had nothing to do with it.
I did all the exports according to the INSTALL file, and they’re all fine… but for some reason this one thing doesn’t work.

You may not have an up to date enough make to build freetype 2.1.3. Make sure your make is at least 3.79.1 (do “make -v” to see its version number) and install a newer version if needed.

Cheers, Fons.

PS: don’t do “make debian” since that is only needed to build Debian packages.

Nope, I’m using make 3.80, so it should be fine.
I’m doing “make debian” because I’m running Debian.

Hi,
I tried make debian on my Debian/Woody system and had no problems with freetype compilation. Is there something special about your source tree setup (eg some links)? Can you post your freetype/src/freetype-2.1.3/Makefile if there is correct definition of the TOP_DIR - it looks like the build system detected that the compilation should be done outside of the source tree which is not the case.
Jiri

:cry:
Hi I’m tryng to install Root on my RedHat 9.0 (GNU Make version 3.79.1) and I have the same problem like you.
I downloaded root_v3.05.07.source.tar.gz;
I do “./configure linux” and then gmake.
I tryed to do “make distclean” and then “make” again, but there is always the same problem!!! I report it below.
Have you solve your problem??
thaks
valentina

*** Building freetype/src/freetype-2.1.3/objs/.libs/libfreetype.a…
gmake[1]: Entering directory `/home/vale/provaRoot/root/freetype/src/freetype-2.1.3’
./builds/unix/configure --with-pic CC= CFLAGS=-O2
checking build system type… i686-pc-linux-gnu
checking host system type… i686-pc-linux-gnu
checking target system type… i686-pc-linux-gnu
checking for gcc… gcc
checking for C compiler default output… a.out
checking whether the C compiler works… yes
checking whether we are cross compiling… no
checking for suffix of executables…
checking for suffix of object files… o
checking whether we are using the GNU C compiler… yes
checking whether gcc accepts -g… yes
checking how to run the C preprocessor… gcc -E
checking for rm… rm -f
checking for rmdir… rmdir
checking for a BSD-compatible install… /usr/bin/install -c
checking for ANSI C header files… yes
checking for sys/types.h… yes
checking for sys/stat.h… yes
checking for stdlib.h… yes
checking for string.h… yes
checking for memory.h… yes
checking for strings.h… yes
checking for inttypes.h… yes
checking for stdint.h… yes
checking for unistd.h… yes
checking fcntl.h usability… yes
checking fcntl.h presence… yes
checking for fcntl.h… yes
checking for unistd.h… (cached) yes
checking for gcc option to accept ANSI C… none needed
checking for an ANSI C-conforming const… yes
checking for int… yes
checking size of int… 4
checking for long… yes
checking size of long… 4
checking for stdlib.h… (cached) yes
checking for unistd.h… (cached) yes
checking for getpagesize… yes
checking for working mmap… yes
checking whether munmap must be declared… no
checking for munmap’s first parameter type… void *
checking for memcpy… yes
checking for memmove… yes
checking for ld used by GCC… /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld… yes
checking for /usr/bin/ld option to reload object files… -r
checking for BSD-compatible nm… /usr/bin/nm -B
checking whether ln -s works… yes
checking how to recognise dependant libraries… pass_all
checking command to parse /usr/bin/nm -B output… ok
checking dlfcn.h usability… yes
checking dlfcn.h presence… yes
checking for dlfcn.h… yes
checking for ranlib… ranlib
checking for strip… strip
checking for objdir… .libs
checking for gcc option to produce PIC… -fPIC
checking if gcc PIC flag -fPIC works… yes
checking if gcc static flag -static works… yes
checking if gcc supports -c -o file.o… yes
checking if gcc supports -c -o file.lo… yes
checking if gcc supports -fno-rtti -fno-exceptions… yes
checking whether the linker (/usr/bin/ld) supports shared libraries… yes
checking how to hardcode library paths into programs… immediate
checking whether stripping libraries is possible… yes
checking dynamic linker characteristics… GNU/Linux ld.so
checking if libtool supports shared libraries… yes
checking whether to build shared libraries… yes
checking whether to build static libraries… yes
checking whether -lc should be explicitly linked in… no
creating libtool
configure: creating ./config.status
config.status: creating unix-cc.mk
config.status: creating unix-def.mk
config.status: creating freetype-config
config.status: creating ftconfig.h

FreeType build system – automatic system detection

The following settings are used:

platform unix
compiler cc
configuration directory ./builds/unix
configuration rules ./builds/unix/unix.mk

If this does not correspond to your system or settings please remove the file
`config.mk’ from this directory then read the INSTALL file for help.

Otherwise, simply type `gmake’ again to build the library.

gmake[1]: Nothing to be done for unix'. gmake[1]: Leaving directory/home/vale/provaRoot/root/freetype/src/freetype-2.1.3’
gmake[1]: Entering directory /home/vale/provaRoot/root/freetype/src/freetype-2.1.3' config.mk:21: /unix-def.mk: No such file or directory config.mk:22: /unix-cc.mk: No such file or directory builds/freetype.mk:206: no file name forinclude’
gmake[1]: *** No rule to make target /unix-cc.mk'. Stop. gmake[1]: Leaving directory/home/vale/provaRoot/root/freetype/src/freetype-2.1.3’
gmake: *** [freetype/src/freetype-2.1.3/objs/.libs/libfreetype.a] Error 2

Hi,

let me repeat my question. Have you got an extra definition of TOP_DIR in your freetype/src/freetype-2.1.3/Makefile?
My Makefile has just
ifndef TOP_DIR
TOP_DIR := .
endif

If there was another TOP_DIR assignment it would explain the error you get
config.mk:21: /unix-def.mk: No such file or directory
config.mk:22: /unix-cc.mk: No such file or directory
Note the leading slash.
Jiri

(’:cry:’)
the variable is defined like in your file…
I tryed to restart all the installation process and I obtain another error just when I do gmake…
I really don’t know what to do… and I have to continue my analisys…
Where is the problem?

[root@localhost root]# [color=darkred]./configure linux --prefix=/usr/local/[/color]
Configuring for linux
Checking for libX11 … /usr/X11R6/lib
Checking for libXpm … /usr/X11R6/lib
Checking for libpthread … /usr/lib
Checking for GL/gl.h … /usr/include
Checking for libGL, or libMesaGL … /usr/lib
Checking for libGLU, or libMesaGLU … /usr/lib
Checking for Inventor/SoType.h … no
Checking for libInventor … no
Checking for libInventorXt … no
Checking for mysql.h … /usr/include/mysql
Checking for libmysqlclient … /usr/lib/mysql
Checking for libpq-fe.h … /usr/include
Checking for libpq … /usr/lib
Checking for qt.h … /usr/lib/qt-3.1/include
Checking for libqt-mt, or libqt … /usr/lib/qt-3.1/lib
Checking for sql.h … no
Checking for libsqlod … no
Checking for libshift, shiftmd, or shift … no
Checking for libpacklib, packmd, or packlib … no
Checking for libkernlib, kernmd, or kernlib … no
Checking for libPythia … no
Checking for libPythia6 … no
Checking for libVenus … no
Checking for dcap.h … no
Checking for libdcap … no
Checking for chirp_client.h … no
Checking for libchirp_client … no
Checking for AliEn.h … no
Checking for libAliEn … no
Checking for jpeglib.h … /usr/include
Checking for png.h … /usr/include
Checking for tiffio.h … /usr/include
Checking for gif_lib.h … /usr/include
Checking for libjpeg … /usr/lib
Checking for libtiff … /usr/lib
Checking for libungif … /usr/lib
Checking for libz … /usr/lib
Checking for libpng … /usr/lib
Checking for ldap.h … /usr/include
Checking for libldap … /usr/lib
Checking for liblber … /usr/lib
Checking for t_server.h … no
Checking for libsrp … no
Checking for libgmp … /usr/lib
Checking for base/libmisc/libmisc … no
Checking for pwauth.h … no
Checking for krb5.h … /usr/kerberos/include
Checking for libk5crypto … /usr/kerberos/lib
Checking for libkrb5 … /usr/kerberos/lib
Checking for libcom_err … /usr/kerberos/lib
Checking for libss … /usr/kerberos/lib
Checking for libk5crypto … /usr/kerberos/lib
Checking for shadow passwords … yes
Checking whether to build libTable … no
Checking whether setresuid declared in /usr/include/unistd.h … yes
Writing config/Makefile.config … done
Writing include/config.h … done
Writing bin/root-config … done
Writing etc/system.rootrc … done
Writing etc/root.mimes … done
Writing bin/memprobe … done
Writing build/misc/root-help.el … done

To build ROOT type:

gmake
gmake install

[root@localhost root]# [color=darkred]gmake[color]
Makefile:301: cint/src/auxu.d: No such file or directory
Makefile:301: cint/src/cast.d: No such file or directory
Makefile:301: cint/src/debug.d: No such file or directory
Makefile:301: cint/src/decl.d: No such file or directory
Makefile:301: cint/src/disp.d: No such file or directory
Makefile:301: cint/src/dump.d: No such file or directory
Makefile:301: cint/src/end.d: No such file or directory
Makefile:301: cint/src/error.d: No such file or directory
Makefile:301: cint/src/expr.d: No such file or directory
Makefile:301: cint/src/fread.d: No such file or directory
Makefile:301: cint/src/func.d: No such file or directory
Makefile:301: cint/src/g__cfunc.d: No such file or directory
Makefile:301: cint/src/gcoll.d: No such file or directory
Makefile:301: cint/src/global1.d: No such file or directory
Makefile:301: cint/src/global2.d: No such file or directory
Makefile:301: cint/src/ifunc.d: No such file or directory
Makefile:301: cint/src/inherit.d: No such file or directory
:cry:

This output is OK. Let the make process run till the end.
Messages like
cint/src/auxu.d: No such file or directory
are not errors. They are generated the first time you run the Makefile
or after a make distclean.

REne

if I let the process end ( I’m doing rpm -ba root.spec) I have always the same error…
I don’t really know how to do
’:roll:’

*** Building freetype/src/freetype-2.1.3/objs/.libs/libfreetype.a…
gmake[1]: Entering directory `/home/vale/provaRoot/root/freetype/src/freetype-2.1.3’
./builds/unix/configure --with-pic CC= CFLAGS=-O2
checking build system type… i686-pc-linux-gnu
checking host system type… i686-pc-linux-gnu
checking target system type… i686-pc-linux-gnu
checking for gcc… gcc
checking for C compiler default output… a.out
checking whether the C compiler works… yes
checking whether we are cross compiling… no
checking for suffix of executables…
checking for suffix of object files… o
checking whether we are using the GNU C compiler… yes
checking whether gcc accepts -g… yes
checking how to run the C preprocessor… gcc -E

checking for rm… rm -f
checking for rmdir… rmdir
checking for a BSD-compatible install… /usr/bin/install -c
checking for ANSI C header files… yes
checking for sys/types.h… yes
checking for sys/stat.h… yes
checking for stdlib.h… yes
checking for string.h… yes
checking for memory.h… yes
checking for strings.h… yes
checking for inttypes.h… yes
checking for stdint.h… yes
checking for unistd.h… yes
checking fcntl.h usability… yes
checking fcntl.h presence… yes
checking for fcntl.h… yes
checking for unistd.h… (cached) yes
checking for gcc option to accept ANSI C… none needed
checking for an ANSI C-conforming const… yes
checking for int… yes
checking size of int… 4
checking for long… yes
checking size of long… 4
checking for stdlib.h… (cached) yes
checking for unistd.h… (cached) yes
checking for getpagesize… yes
checking for working mmap… yes
checking whether munmap must be declared… no
checking for munmap’s first parameter type… void *
checking for memcpy… yes
checking for memmove… yes
checking for ld used by GCC… /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld… yes
checking for /usr/bin/ld option to reload object files… -r
checking for BSD-compatible nm… /usr/bin/nm -B
checking whether ln -s works… yes
checking how to recognise dependant libraries… pass_all
checking command to parse /usr/bin/nm -B output… ok
checking dlfcn.h usability… yes
checking dlfcn.h presence… yes
checking for dlfcn.h… yes
checking for ranlib… ranlib
checking for strip… strip
checking for objdir… .libs
checking for gcc option to produce PIC… -fPIC
checking if gcc PIC flag -fPIC works… yes
checking if gcc static flag -static works… yes
checking if gcc supports -c -o file.o… yes
checking if gcc supports -c -o file.lo… yes
checking if gcc supports -fno-rtti -fno-exceptions… yes
checking whether the linker (/usr/bin/ld) supports shared libraries… yes
checking how to hardcode library paths into programs… immediate
checking whether stripping libraries is possible… yes
checking dynamic linker characteristics… GNU/Linux ld.so
checking if libtool supports shared libraries… yes
checking whether to build shared libraries… yes
checking whether to build static libraries… yes
checking whether -lc should be explicitly linked in… no
creating libtool
configure: creating ./config.status
config.status: creating unix-cc.mk
config.status: creating unix-def.mk
config.status: creating freetype-config
config.status: creating ftconfig.h

FreeType build system – automatic system detection

The following settings are used:

platform unix
compiler cc
configuration directory ./builds/unix
configuration rules ./builds/unix/unix.mk

If this does not correspond to your system or settings please remove the file
`config.mk’ from this directory then read the INSTALL file for help.

Otherwise, simply type `gmake’ again to build the library.

gmake[1]: Nothing to be done for unix'. gmake[1]: Leaving directory/home/vale/provaRoot/root/freetype/src/freetype-2.1.3’
gmake[1]: Entering directory /home/vale/provaRoot/root/freetype/src/freetype-2.1.3' config.mk:21: /unix-def.mk: No such file or directory config.mk:22: /unix-cc.mk: No such file or directory builds/freetype.mk:206: no file name forinclude’
gmake[1]: *** No rule to make target /unix-cc.mk'. Stop. gmake[1]: Leaving directory/home/vale/provaRoot/root/freetype/src/freetype-2.1.3’
gmake: *** [freetype/src/freetype-2.1.3/objs/.libs/libfreetype.a] Error 2
:unamused:

OK I can reproduce the problem but I don’t understand why it happens. I ran configure and make distclean couple of times and I cannot compile freetype anymore. I’ll let you know if I find out why.
Jiri

Hi,

the difference is in the way how configure is invoked.
In my setup first cd builds/unix; is done and configure is run from this dir
*** Building freetype/src/freetype-2.1.3/objs/.libs/libfreetype.a…
make[1]: Entering directory `/data/masik/v3.05/freetype/src/freetype-2.1.3’
cd builds/unix; ./configure --with-pic CC= CFLAGS="-O2"

In your setup the configure is invoked from another directory and the output files (unix-def.mk etc) are created in wrong place.

cheers
Jiri

I see…
Who does the setup?
have I to specify anything?
I just do:
tar zxvf file from the directory where the file .tar.gz is.
cd root
from the directory root export ROOTSYS=the path to this directory
always from the same directory ./configure linux and gmake.
Thanks…
valentina

:smiley:
I don’t really know why, but I did all the commands once again and it works!!!
it just said me

vale@localhost root]$ gmake
g++ -O -pipe -Wall -Woverloaded-virtual -fPIC -Iinclude -D_REENTRANT -DR__SHADOWPW -DR__KRB5 -I/usr/kerberos/include -o rootd/src/rootd.o -c rootd/src/rootd.cxx
rootd/src/rootd.cxx: In function int setresgid(unsigned int, unsigned int, unsigned int)': rootd/src/rootd.cxx:327:int setresgid(unsigned int, unsigned int, unsigned
int)’ was declared extern' and laterstatic’
/usr/include/unistd.h:658: previous declaration of int setresgid(unsigned int, unsigned int, unsigned int)' rootd/src/rootd.cxx: In functionint setresuid(unsigned int, unsigned int,
unsigned int)’:
rootd/src/rootd.cxx:334: int setresuid(unsigned int, unsigned int, unsigned int)' was declaredextern’ and later static' /usr/include/unistd.h:654: previous declaration ofint setresuid(unsigned int,
unsigned int, unsigned int)'
gmake: *** [rootd/src/rootd.o] Error 1
[vale@localhost root]$ gmake install
Everything already installed…
[vale@localhost root]$ root
root: can’t start ROOT – check that /home/vale/provaRoot2/root/bin/root.exe exists!

but I ignored the error, hoping it wont’t cause problems in the future…
and I copyed the root.exe in the rigth place.
Now I can return to my work.
Thanks
ciao
valentina