lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Building Lilypond on Ubuntu 16.04


From: Thomas Weber
Subject: Re: Building Lilypond on Ubuntu 16.04
Date: Wed, 21 Sep 2016 12:26:49 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0

Thanks for bringing me on track, Werner.  I was able to solve the problem in a 
quick and dirty manner, however it would be useful to learn how to solve it 
properly.

What I did was:

$ sudo ln -s /usr/include/freetype2/freetype/config 
/usr/include/freetype2/config
$ sudo sed -i 's|/freetype2$|/freetype2/freetype|' 
/usr/lib/x86_64-linux-gnu/pkgconfig/freetype2.pc
$ ./configure
$ make

Which gives me a working lilypond 2.19.49.  What I didn't try previously was 
the first step, i.e. the symbolic link to the config folder.


Am 21.09.2016 um 10:59 schrieb Werner LEMBERG:
>
> You still don't tell us what lilypond version you are compiling.  


You're right.  I tried compiling the current master branch.


> And
> the interesting data is not the make output but the data in
> `config.log' that protocols how the build system got configured.
>


O.K., so I attached the full log (that's from the unmodified .pc file).  Here 
are the lines with "freetype" in them:

$ grep freetype config.log
configure:9267: result: -I/usr/include/pango-1.0 -I/usr/include/harfbuzz 
-I/usr/include/pango-1.0 -I/usr/include/glib-2.0 
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/freetype2
configure:9273: result: -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 
-lfontconfig -lfreetype
configure:9307: g++ -c   -O2 -finline-functions -g -pipe 
-I/usr/include/python2.7 -I/usr/include/x86_64-linux-gnu/python2.7  
-fno-strict-aliasing -g -fstack-protector-strong  -g -fwrapv  
-I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 
-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include 
-I/usr/include/freetype2 conftest.cpp >&5
configure:9307: g++ -E -I/usr/include/python2.7 
-I/usr/include/x86_64-linux-gnu/python2.7  -fno-strict-aliasing -g 
-fstack-protector-strong  -g -fwrapv  -I/usr/include/pango-1.0 
-I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/freetype2 
conftest.cpp
configure:9319: g++ -o conftest   -O2 -finline-functions -g -pipe 
-I/usr/include/python2.7 -I/usr/include/x86_64-linux-gnu/python2.7  
-fno-strict-aliasing -g -fstack-protector-strong  -g -fwrapv  
-I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 
-I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include 
-I/usr/include/freetype2  conftest.cpp -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 
-lglib-2.0 -lfontconfig -lfreetype -ldl  >&5
configure:9409: result: -I/usr/include/freetype2
configure:9415: result: -lfontconfig -lfreetype
configure:9513: checking for freetype2 >= 2.1.10
configure:9524: result: -I/usr/include/freetype2
configure:9530: result: -lfreetype
FONTCONFIG_CFLAGS='-I/usr/include/freetype2'
FONTCONFIG_LIBS='-lfontconfig -lfreetype'
FREETYPE2_CFLAGS='-I/usr/include/freetype2'
FREETYPE2_LIBS='-lfreetype'
PANGO_FT2_CFLAGS='-I/usr/include/pango-1.0 -I/usr/include/harfbuzz 
-I/usr/include/pango-1.0 -I/usr/include/glib-2.0 
-I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/freetype2'
PANGO_FT2_LIBS='-lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 
-lfontconfig -lfreetype'


>>  I tried changing the line "Cflags: -I${includedir}/freetype2" to
>> "Cflags: -I${includedir}/freetype2/freetype", but the headers are
>> still not found.
> Pfft, don't change this file!  It was installed during a `make
> install' of the FreeType library.  If you have a different FreeType
> library installed, then you have *another* `freetype2.pc' file.
> Search that.


This is a pretty clean and fresh system, I didn't install anything outside of 
the package manager.  All I got was:

$ LANG=C sudo find / -name 'freetype2.pc'
find: './run/user/1000/gvfs': Permission denied
./usr/lib/x86_64-linux-gnu/pkgconfig/freetype2.pc


> It might be possible to change the order of directories searched by
> pkg-config.  You can do that by modifying the `PKG_CONFIG_PATH'
> environment variable.  More details can be found in pkg-config's
> manpage.
>
> Have a look at the output of
>
>   pkg-config --debug 2>&1 | less
>
> and search for `freetype'; this shows you what pkg-config finds where.


$ pkg-config --debug 2>&1 | grep freetype
File 'freetype2.pc' appears to be a .pc file
Will find package 'freetype2' in file 
'/usr/lib/x86_64-linux-gnu/pkgconfig/freetype2.pc'

That's the very freetype2.pc file I modified to make things work.

Could that mean the package libreetype6-dev has a broken .pc file (because 
Cflags should point to a different folder)?  These are the .pc and .h files it 
installs:

$ dpkg-query -L libfreetype6-dev | grep -E '(\.pc$)|(\.h$)'
/usr/lib/x86_64-linux-gnu/pkgconfig/freetype2.pc
/usr/include/freetype2/freetype/ftcid.h
/usr/include/freetype2/freetype/ftmodapi.h
/usr/include/freetype2/freetype/fttrigon.h
/usr/include/freetype2/freetype/ftoutln.h
/usr/include/freetype2/freetype/ftglyph.h
/usr/include/freetype2/freetype/ftincrem.h
/usr/include/freetype2/freetype/fterrors.h
/usr/include/freetype2/freetype/ftbbox.h
/usr/include/freetype2/freetype/ftcache.h
/usr/include/freetype2/freetype/ftfntfmt.h
/usr/include/freetype2/freetype/ftmac.h
/usr/include/freetype2/freetype/ftrender.h
/usr/include/freetype2/freetype/ftwinfnt.h
/usr/include/freetype2/freetype/fterrdef.h
/usr/include/freetype2/freetype/ftbdf.h
/usr/include/freetype2/freetype/ftsizes.h
/usr/include/freetype2/freetype/ftchapters.h
/usr/include/freetype2/freetype/ftlcdfil.h
/usr/include/freetype2/freetype/ftotval.h
/usr/include/freetype2/freetype/fttypes.h
/usr/include/freetype2/freetype/ftadvanc.h
/usr/include/freetype2/freetype/ftmm.h
/usr/include/freetype2/freetype/ftsynth.h
/usr/include/freetype2/freetype/ftgxval.h
/usr/include/freetype2/freetype/ftautoh.h
/usr/include/freetype2/freetype/ftgzip.h
/usr/include/freetype2/freetype/freetype.h
/usr/include/freetype2/freetype/ftimage.h
/usr/include/freetype2/freetype/ftbzip2.h
/usr/include/freetype2/freetype/ftttdrv.h
/usr/include/freetype2/freetype/ttunpat.h
/usr/include/freetype2/freetype/tttables.h
/usr/include/freetype2/freetype/tttags.h
/usr/include/freetype2/freetype/ftlist.h
/usr/include/freetype2/freetype/ftgasp.h
/usr/include/freetype2/freetype/ftmoderr.h
/usr/include/freetype2/freetype/ftstroke.h
/usr/include/freetype2/freetype/ftpfr.h
/usr/include/freetype2/freetype/ftbitmap.h
/usr/include/freetype2/freetype/ttnameid.h
/usr/include/freetype2/freetype/t1tables.h
/usr/include/freetype2/freetype/config/ftheader.h
/usr/include/freetype2/freetype/config/ftoption.h
/usr/include/freetype2/freetype/config/ftstdlib.h
/usr/include/freetype2/freetype/config/ftmodule.h
/usr/include/freetype2/freetype/config/ftconfig.h
/usr/include/freetype2/freetype/ftcffdrv.h
/usr/include/freetype2/freetype/ftlzw.h
/usr/include/freetype2/freetype/ftsystem.h
/usr/include/freetype2/freetype/ftsnames.h
/usr/include/freetype2/ft2build.h
/usr/include/x86_64-linux-gnu/freetype2/freetype/config/ftheader.h
/usr/include/x86_64-linux-gnu/freetype2/freetype/config/ftoption.h
/usr/include/x86_64-linux-gnu/freetype2/freetype/config/ftstdlib.h
/usr/include/x86_64-linux-gnu/freetype2/freetype/config/ftmodule.h
/usr/include/x86_64-linux-gnu/freetype2/freetype/config/ftconfig.h

Attachment: config.log
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]