freetype
[Top][All Lists]
Advanced

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

Re: [ft] Freetype2-dev package not found when crosscompiling


From: Nikolaus Neusser
Subject: Re: [ft] Freetype2-dev package not found when crosscompiling
Date: Sun, 11 Dec 2016 13:32:52 +0100
User-agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1

I have finally found the solution, so i just wanted to share it with you.

I had to recompile qmake, since i haven't enabled pkg-config support.
After enabling it and recompiling qmake, qmake found freetype2 without any 
problems.

Thanks a lot for your help.

Nik

Am 06.11.2016 um 12:53 schrieb suzuki toshiya:
Oh, considering that pkg-config returns the module number (the instead of 
abort),
pkg-config works correctly. So qmake might not use pkg-config to detect 
freetype2.

Regards,
mpsuzuki

Nikolaus Neusser wrote:
Dear mpsuzuki,

- i updated my host through apg-get update and apt-get upgrade

- running: pkg-config --version
    yields: 0.28

- But running "pkg-config --modversion freetype" still outputs:
     Unknown keyword 'Libs.private' in
'/home/niki/opt_qt_for_rpi/qt5.6.1-1/sysroot/usr/lib/arm-linux-gnueabihf/pkgconfig/freetype2.pc'

Nik

Am 06.11.2016 um 10:25 schrieb suzuki toshiya:
Dear Nik,

    line>Libs.private: -lz -lpng12 -lz -lm
Unknown keyword 'Libs.private' in 
'/home/niki/opt_qt_for_rpi/qt5.6.1-1/sysroot/usr/lib/arm-linux-gnueabihf/pkgconfig/freetype2.pc'
    line>Cflags: -I${includedir}
Path position of 'freetype2' is 2
Adding 'freetype2' to list of known packages
18.0.12
I think "Unknown keyword 'Libs.private' ..." might be caused by legacy
pkg-config which cannot parse the latest pkg-config data.
Is it possible for you to update pkg-config itself?

Note:
An interesting thing i just noticed is: When i run qmake (having set 
PKG_CONFIG_DEBUG_SPEW) i don't get any debug messages like when manually 
running pkg-config.
Only the error message: Project ERROR: freetype2 development package not found
Could this maybe mean, that qmake is not calling pkg-config?
I'm not sure. There is a possibility that qmake hides the debug messages from
your eyes (as configure by GNU autoconf does not pass error messages from the
compilers directly). Anyway, I don't know the exact answer.

Regards,
mpsuzuki


Nikolaus Neusser wrote:
ok, i did the following:
    - export all variables like before including setting PKG_CONFIG_DEBUG_SPEW
    - i ran on the host: pkg-config --modversion freetype2
    -> Output, see below:

Note:
An interesting thing i just noticed is: When i run qmake (having set 
PKG_CONFIG_DEBUG_SPEW) i don't get any debug messages like when manually 
running pkg-config.
Only the error message: Project ERROR: freetype2 development package not found
Could this maybe mean, that qmake is not calling pkg-config?

Output for: "pkg-config --modversion freetype2"
Looking for package 'freetype2'
Looking for package 'freetype2-uninstalled'
Reading 'freetype2' from file 
'/home/niki/opt_qt_for_rpi/qt5.6.1-1/sysroot/usr/lib/arm-linux-gnueabihf/pkgconfig/freetype2.pc'
Parsing package file 
'/home/niki/opt_qt_for_rpi/qt5.6.1-1/sysroot/usr/lib/arm-linux-gnueabihf/pkgconfig/freetype2.pc'
    line>prefix=/usr
   Variable declaration, 'prefix' has value '/usr'
    line>exec_prefix=/usr
   Variable declaration, 'exec_prefix' has value '/usr'
    line>libdir=/usr/lib/arm-linux-gnueabihf
   Variable declaration, 'libdir' has value '/usr/lib/arm-linux-gnueabihf'
    line>includedir=/usr/include/freetype2
   Variable declaration, 'includedir' has value '/usr/include/freetype2'
    line>
    line>Name: FreeType 2
    line>URL: http://freetype.org
    line>Description: A free, high-quality, and portable font engine.
    line>Version: 18.0.12
    line>Requires:
    line>Requires.private:
    line>Libs: -L${libdir} -lfreetype
    line>Libs.private: -lz -lpng12 -lz -lm
Unknown keyword 'Libs.private' in 
'/home/niki/opt_qt_for_rpi/qt5.6.1-1/sysroot/usr/lib/arm-linux-gnueabihf/pkgconfig/freetype2.pc'
    line>Cflags: -I${includedir}
Path position of 'freetype2' is 2
Adding 'freetype2' to list of known packages
18.0.12





Am 06.11.2016 um 09:11 schrieb suzuki toshiya:

Dear Lawrence,

Thank you for good pointing out. Now I'm afraid that there is a possibility
that setting both of PKG_CONFIG_SYSROOT_DIR & PKG_CONFIG_LIBDIR made pkg-config
search wrong directory. Something like this.

PKG_CONFIG_SYSROOT_DIR=/sysroot/cross-blahblahblah
-> pkg-config will search /sysroot/cross-blahblahblah/usr/lib/pkgconfig/

PKG_CONFIG_LIBDIR=/sysroot/cross-blahblahblah/usr/lib/pkgconfig/
-> pkg-config will search /sysroot/cross-blahblahblah/usr/lib/pkgconfig/

PKG_CONFIG_SYSROOT_DIR=/sysroot/cross-blahblahblah
PKG_CONFIG_LIBDIR=/sysroot/cross-blahblahblah/usr/lib/pkgconfig/
-> pkg-config will search
/sysroot/cross-blahblahblah/sysroot/cross-blahblahblah/usr/lib/pkgconfig/

--

Nik, if you set PKG_CONFIG_DEBUG_SPEW and execute pkg-config,
you would receive some messages telling where freetype2.pc comes from, like 
this.

...
Looking for package 'freetype2'
Looking for package 'freetype2-uninstalled'
Reading 'freetype2' from file '/usr/lib/x86_64-linux-gnu/pkgconfig/freetype2.pc'
Parsing package file '/usr/lib/x86_64-linux-gnu/pkgconfig/freetype2.pc'
    line>prefix=/usr
...

Please confirm which freetype2.pc is used.

Regards,
mpsuzuki


Lawrence D'Oliveiro wrote:


On Sun, 6 Nov 2016 07:22:35 +0100, Nikolaus Neusser wrote:



All i know is, that the developer of the plugin told
me, that freetype2 is found through pkg-config.



According to the man page 
<https://linux.die.net/man/1/pkg-config><https://linux.die.net/man/1/pkg-config>,
 you
have to set the PKG_CONFIG_SYSROOT_DIR environment variable to point to
where the includes and libs for the target system are kept, in order to
do cross-compilation.

_______________________________________________
Freetype mailing list
address@hidden<mailto:address@hidden>
https://lists.nongnu.org/mailman/listinfo/freetype














reply via email to

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