Cross compiling gimp with mingw-w64 requires pangoft2 that is not available
This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.
This is a read-only list on gimpusers.com so this discussion thread is read-only, too.
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available | YuGiOhJCJ Mailing-List | 08 Mar 04:55 |
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available | HK_Privat | 09 Mar 19:16 |
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available | YuGiOhJCJ Mailing-List | 11 Mar 14:55 |
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available | YuGiOhJCJ Mailing-List | 11 Mar 17:40 |
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available | Kevin Cozens | 09 Mar 20:17 |
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available
Hello,
Programs used:
- gimp-2.8.16
- cairo-1.14.2
- pango-1.39.0
- fontconfig-2.11.1
- freetype-2.4.10
How I compile pango for Windows: $ ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 $ make
When I cross compile gimp with mingw-w64 [1] I got an error telling I need pango with the optional support for cairo [2] but I already have installed pango and its cairo support.
Reading more carefully the config.log file, I see that "pangoft2" is checked too at this step [3] and that's why this error is shown.
So, I need pangoft2 but I don't think it is possible to build pango with pangoft2 for win32 platform.
Indeed, when I compile pango for Linux, I got pangoft2, but when I compile pango for Windows, the pangoft2 library does not come with it.
As gimp depends on pangoft2, I can't build gimp with mingw-w64.
How can I cross compile gimp for Windows whereas pangoft2 cannot be built for this platform?
Thank you. Best regards.
[1] http://wiki.gimp.org/wiki/Hacking:Building/Windows#Build_GIMP
[2] Error while compiling gimp for Windows:
./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 --enable-introspection=no --disable-glibtest --disable-gtktest --disable-docs --without-libjpeg --disable-python --without-xmc --without-dbus --without-libzma
[...]
checking for CAIRO... yes
checking for PANGOCAIRO... no
configure: error: Test for PangoCairo failed.
*** We require Pango with the optional support for Cairo compiled in.
*** See the file 'INSTALL' for more help.
[3] The config.log file after trying to compile gimp for Windows:
$ cat config.log
[...]
configure:18051: checking for CAIRO
configure:18058: $PKG_CONFIG --exists --print-errors "cairo >= 1.10.2"
configure:18061: $? = 0
configure:18075: $PKG_CONFIG --exists --print-errors "cairo >= 1.10.2"
configure:18078: $? = 0
configure:18136: result: yes
configure:18143: checking for PANGOCAIRO
configure:18150: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.29.4 pangoft2"
Package pangoft2 was not found in the pkg-config search path.
Perhaps you should add the directory containing `pangoft2.pc'
to the PKG_CONFIG_PATH environment variable
No package 'pangoft2' found
configure:18153: $? = 1
configure:18167: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.29.4 pangoft2"
Package pangoft2 was not found in the pkg-config search path.
Perhaps you should add the directory containing `pangoft2.pc'
to the PKG_CONFIG_PATH environment variable
No package 'pangoft2' found
configure:18170: $? = 1
configure:18184: result: no
No package 'pangoft2' found
configure:18200: error: Test for PangoCairo failed.
*** We require Pango with the optional support for Cairo compiled in.
*** See the file 'INSTALL' for more help.
[...]
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available
Hello.
In your list, harfbuzz is missing. I do not have checked all versions, but I compiled pango with the freetype, harfbuzz and cairo dependencies and my Windows 10, 64bit compilation includes the pangoft2-1.0-0.dll
regards
-----Ursprngliche Nachricht-----
Von: gimp-developer-list [mailto:gimp-developer-list-bounces@gnome.org] Im Auftrag von YuGiOhJCJ Mailing-List Gesendet: Dienstag, 8. Mrz 2016 05:56 An: gimp-developer-list@gnome.org
Betreff: [Gimp-developer] Cross compiling gimp with mingw-w64 requires pangoft2 that is not availableHello,
Programs used: - gimp-2.8.16
- cairo-1.14.2
- pango-1.39.0
- fontconfig-2.11.1
- freetype-2.4.10How I compile pango for Windows: $ ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 $ make
When I cross compile gimp with mingw-w64 [1] I got an error telling I need pango with the optional support for cairo [2] but I already have installed pango and its cairo support.
Reading more carefully the config.log file, I see that "pangoft2" is
checked
too at this step [3] and that's why this error is shown.
So, I need pangoft2 but I don't think it is possible to build pango with pangoft2 for win32 platform.
Indeed, when I compile pango for Linux, I got pangoft2, but when I compile pango for Windows, the pangoft2 library does not come with it.
As gimp depends on pangoft2, I can't build gimp with mingw-w64.
How can I cross compile gimp for Windows whereas pangoft2 cannot be built for this platform?
Thank you.
Best regards.[1] http://wiki.gimp.org/wiki/Hacking:Building/Windows#Build_GIMP
[2] Error while compiling gimp for Windows: ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 -- enable-introspection=no --disable-glibtest --disable-gtktest
--disable-docs --
without-libjpeg --disable-python --without-xmc --without-dbus --without- libzma [...] checking for CAIRO... yes checking for PANGOCAIRO... no configure: error: Test for PangoCairo failed. *** We require Pango with the optional support for Cairo compiled in. *** See the file 'INSTALL' for more help.
[3] The config.log file after trying to compile gimp for Windows: $ cat config.log
[...]
configure:18051: checking for CAIRO
configure:18058: $PKG_CONFIG --exists --print-errors "cairo >= 1.10.2" configure:18061: $? = 0
configure:18075: $PKG_CONFIG --exists --print-errors "cairo >= 1.10.2" configure:18078: $? = 0
configure:18136: result: yes
configure:18143: checking for PANGOCAIRO configure:18150: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.29.4 pangoft2"
Package pangoft2 was not found in the pkg-config search path. Perhaps you should add the directory containing `pangoft2.pc' to the PKG_CONFIG_PATH environment variable No package 'pangoft2' found
configure:18153: $? = 1
configure:18167: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.29.4 pangoft2"
Package pangoft2 was not found in the pkg-config search path. Perhaps you should add the directory containing `pangoft2.pc' to the PKG_CONFIG_PATH environment variable No package 'pangoft2' found
configure:18170: $? = 1
configure:18184: result: no
No package 'pangoft2' found
configure:18200: error: Test for PangoCairo failed. *** We require Pango with the optional support for Cairo compiled in. *** See the file 'INSTALL' for more help. [...]
_______________________________________________ gimp-developer-list mailing list
List address: gimp-developer-list@gnome.org List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer- list
List archives: https://mail.gnome.org/archives/gimp-developer-list
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available
On 16-03-07 11:55 PM, YuGiOhJCJ Mailing-List wrote:
- gimp-2.8.16
- cairo-1.14.2
- pango-1.39.0
- fontconfig-2.11.1
- freetype-2.4.10
[snip]
When I cross compile gimp with mingw-w64 [1] I got an error telling I need pango with the optional support for cairo [2] but I already have installed pango and its cairo support.
I don't see the pangocairo package listed above.
Cheers! Kevin. http://www.ve3syb.ca/ |"Nerds make the shiny things that distract Owner of Elecraft K2 #2172 | the mouth-breathers, and that's why we're | powerful!" #include | --Chris Hardwick
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available
Indeed, I have not installed harfbuzz because I thought it was an optional dependency that I don't need to build gimp.
You compiled pango with freetype/harfbuzz/cairo on Windows 10 64 bit. But what I am doing is a bit different: I am cross-compiling pango for Windows 32 bit on Linux 32 bit.
Anyway, interesting that you get the pangoft2-1.0-0.dll file because that is exactly what I need to build.
I have cross-compiled and installed harfbuzz and its icu4c dependency:
- icu4c-56.1
- harfbuzz-1.2.3-i486-20160311152555
But now with these new programs installed, I am not anymore able to cross-compile pango:
---
$ ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32
$ make
[...]
CC pangowin32-shape.lo
pangowin32-shape.c:39:17: warning: 'pango_win32_debug' defined but not used [-Wunused-variable]
static gboolean pango_win32_debug = FALSE;
^
GEN pangowin32-win32-res.o
CCLD libpangowin32-1.0.la
CCLD libpangocairo-1.0.la
.libs/pangocairo-fcfont.o: In function `pango_cairo_fc_font_create_font_face':
/tmp/build/gimp/pango-1.39.0/pango/pangocairo-fcfont.c:63: undefined reference to `cairo_ft_font_face_create_for_pattern'
.libs/pangocairo-fcfontmap.o: In function `pango_cairo_fc_font_map_fontset_key_substitute':
/tmp/build/gimp/pango-1.39.0/pango/pangocairo-fcfontmap.c:114: undefined reference to `cairo_ft_font_options_substitute'
collect2: error: ld returned 1 exit status
make[4]: *** [libpangocairo-1.0.la] Error 1
make[4]: Leaving directory `/tmp/build/gimp/pango-1.39.0/pango'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/build/gimp/pango-1.39.0/pango'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/tmp/build/gimp/pango-1.39.0/pango'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/build/gimp/pango-1.39.0'
make: *** [all] Error 2
---
An interesting thing is that when I don't have harfbuzz, that's what I see:
---
$ ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32
[...]
configuration:
backends: Cairo Win32
[...]
---
Whereas when I have harfbuzz, that's what I see:
---
[...]
configuration:
backends: Cairo Win32 FreeType
[...]
---
So, it means that having harfbuzz installed enables the FreeType backend on pango. It means that it enables the building of pangoft2-1.0-0.dll. Exactly what I want :)
But why I got this "undefined reference to `cairo_ft_font_face_create_for_pattern'" error please?
On Wed, 9 Mar 2016 20:16:52 +0100 "HK_Privat" wrote:
Hello.
In your list, harfbuzz is missing. I do not have checked all versions, but I compiled pango with the freetype, harfbuzz and cairo dependencies and my Windows 10, 64bit compilation includes the pangoft2-1.0-0.dll
regards
-----Ursprngliche Nachricht-----
Von: gimp-developer-list [mailto:gimp-developer-list-bounces@gnome.org] Im Auftrag von YuGiOhJCJ Mailing-List Gesendet: Dienstag, 8. Mrz 2016 05:56 An: gimp-developer-list@gnome.org
Betreff: [Gimp-developer] Cross compiling gimp with mingw-w64 requires pangoft2 that is not availableHello,
Programs used: - gimp-2.8.16
- cairo-1.14.2
- pango-1.39.0
- fontconfig-2.11.1
- freetype-2.4.10How I compile pango for Windows: $ ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 $ make
When I cross compile gimp with mingw-w64 [1] I got an error telling I need pango with the optional support for cairo [2] but I already have installed pango and its cairo support.
Reading more carefully the config.log file, I see that "pangoft2" is
checked
too at this step [3] and that's why this error is shown.
So, I need pangoft2 but I don't think it is possible to build pango with pangoft2 for win32 platform.
Indeed, when I compile pango for Linux, I got pangoft2, but when I compile pango for Windows, the pangoft2 library does not come with it.
As gimp depends on pangoft2, I can't build gimp with mingw-w64.
How can I cross compile gimp for Windows whereas pangoft2 cannot be built for this platform?
Thank you.
Best regards.[1] http://wiki.gimp.org/wiki/Hacking:Building/Windows#Build_GIMP
[2] Error while compiling gimp for Windows: ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 -- enable-introspection=no --disable-glibtest --disable-gtktest
--disable-docs --
without-libjpeg --disable-python --without-xmc --without-dbus --without- libzma [...] checking for CAIRO... yes checking for PANGOCAIRO... no configure: error: Test for PangoCairo failed. *** We require Pango with the optional support for Cairo compiled in. *** See the file 'INSTALL' for more help.
[3] The config.log file after trying to compile gimp for Windows: $ cat config.log
[...]
configure:18051: checking for CAIRO
configure:18058: $PKG_CONFIG --exists --print-errors "cairo >= 1.10.2" configure:18061: $? = 0
configure:18075: $PKG_CONFIG --exists --print-errors "cairo >= 1.10.2" configure:18078: $? = 0
configure:18136: result: yes
configure:18143: checking for PANGOCAIRO configure:18150: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.29.4 pangoft2"
Package pangoft2 was not found in the pkg-config search path. Perhaps you should add the directory containing `pangoft2.pc' to the PKG_CONFIG_PATH environment variable No package 'pangoft2' found
configure:18153: $? = 1
configure:18167: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.29.4 pangoft2"
Package pangoft2 was not found in the pkg-config search path. Perhaps you should add the directory containing `pangoft2.pc' to the PKG_CONFIG_PATH environment variable No package 'pangoft2' found
configure:18170: $? = 1
configure:18184: result: no
No package 'pangoft2' found
configure:18200: error: Test for PangoCairo failed. *** We require Pango with the optional support for Cairo compiled in. *** See the file 'INSTALL' for more help. [...]
_______________________________________________ gimp-developer-list mailing list
List address: gimp-developer-list@gnome.org List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer- list
List archives: https://mail.gnome.org/archives/gimp-developer-list
Cross compiling gimp with mingw-w64 requires pangoft2 that is not available
OK it was just cairo that was not correctly cross-compiled (I don't know why). There was missing symbols in the library.
That was before I recompiled cairo: $ i686-w64-mingw32-nm /tmp/i686-w64-mingw32-cairo-1.14.2/usr/i686-w64-mingw32/lib/libcairo.a | grep cairo_ft_font_face_create_for_pattern
Whereas now: $ i686-w64-mingw32-nm /tmp/i686-w64-mingw32-cairo-1.14.2/usr/i686-w64-mingw32/lib/libcairo.a | grep cairo_ft_font_face_create_for_pattern 00001930 t __cairo_ft_font_face_create_for_pattern 00004170 T _cairo_ft_font_face_create_for_pattern
Now, I am amble to compile pango and I have pangoft2 so gimp is happy :) Problem solved.
On Fri, 11 Mar 2016 15:55:37 +0100 YuGiOhJCJ Mailing-List wrote:
Indeed, I have not installed harfbuzz because I thought it was an optional dependency that I don't need to build gimp.
You compiled pango with freetype/harfbuzz/cairo on Windows 10 64 bit. But what I am doing is a bit different: I am cross-compiling pango for Windows 32 bit on Linux 32 bit.
Anyway, interesting that you get the pangoft2-1.0-0.dll file because that is exactly what I need to build.
I have cross-compiled and installed harfbuzz and its icu4c dependency: - icu4c-56.1
- harfbuzz-1.2.3-i486-20160311152555But now with these new programs installed, I am not anymore able to cross-compile pango: ---
$ ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 $ make
[...]
CC pangowin32-shape.lo
pangowin32-shape.c:39:17: warning: 'pango_win32_debug' defined but not used [-Wunused-variable] static gboolean pango_win32_debug = FALSE; ^
GEN pangowin32-win32-res.o
CCLD libpangowin32-1.0.la
CCLD libpangocairo-1.0.la
.libs/pangocairo-fcfont.o: In function `pango_cairo_fc_font_create_font_face': /tmp/build/gimp/pango-1.39.0/pango/pangocairo-fcfont.c:63: undefined reference to `cairo_ft_font_face_create_for_pattern' .libs/pangocairo-fcfontmap.o: In function `pango_cairo_fc_font_map_fontset_key_substitute': /tmp/build/gimp/pango-1.39.0/pango/pangocairo-fcfontmap.c:114: undefined reference to `cairo_ft_font_options_substitute' collect2: error: ld returned 1 exit status make[4]: *** [libpangocairo-1.0.la] Error 1 make[4]: Leaving directory `/tmp/build/gimp/pango-1.39.0/pango' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/tmp/build/gimp/pango-1.39.0/pango' make[2]: *** [all] Error 2
make[2]: Leaving directory `/tmp/build/gimp/pango-1.39.0/pango' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/build/gimp/pango-1.39.0' make: *** [all] Error 2
---An interesting thing is that when I don't have harfbuzz, that's what I see: ---
$ ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 [...]
configuration:
backends: Cairo Win32
[...]
---Whereas when I have harfbuzz, that's what I see: ---
[...]
configuration:
backends: Cairo Win32 FreeType
[...]
---So, it means that having harfbuzz installed enables the FreeType backend on pango. It means that it enables the building of pangoft2-1.0-0.dll. Exactly what I want :)
But why I got this "undefined reference to `cairo_ft_font_face_create_for_pattern'" error please?
On Wed, 9 Mar 2016 20:16:52 +0100 "HK_Privat" wrote:
Hello.
In your list, harfbuzz is missing. I do not have checked all versions, but I compiled pango with the freetype, harfbuzz and cairo dependencies and my Windows 10, 64bit compilation includes the pangoft2-1.0-0.dll
regards
-----Ursprngliche Nachricht-----
Von: gimp-developer-list [mailto:gimp-developer-list-bounces@gnome.org] Im Auftrag von YuGiOhJCJ Mailing-List Gesendet: Dienstag, 8. Mrz 2016 05:56 An: gimp-developer-list@gnome.org
Betreff: [Gimp-developer] Cross compiling gimp with mingw-w64 requires pangoft2 that is not availableHello,
Programs used: - gimp-2.8.16
- cairo-1.14.2
- pango-1.39.0
- fontconfig-2.11.1
- freetype-2.4.10How I compile pango for Windows: $ ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 $ make
When I cross compile gimp with mingw-w64 [1] I got an error telling I need pango with the optional support for cairo [2] but I already have installed pango and its cairo support.
Reading more carefully the config.log file, I see that "pangoft2" is
checked
too at this step [3] and that's why this error is shown.
So, I need pangoft2 but I don't think it is possible to build pango with pangoft2 for win32 platform.
Indeed, when I compile pango for Linux, I got pangoft2, but when I compile pango for Windows, the pangoft2 library does not come with it.
As gimp depends on pangoft2, I can't build gimp with mingw-w64.
How can I cross compile gimp for Windows whereas pangoft2 cannot be built for this platform?
Thank you.
Best regards.[1] http://wiki.gimp.org/wiki/Hacking:Building/Windows#Build_GIMP
[2] Error while compiling gimp for Windows: ./configure --prefix=/usr/i686-w64-mingw32 --host=i686-w64-mingw32 -- enable-introspection=no --disable-glibtest --disable-gtktest
--disable-docs --
without-libjpeg --disable-python --without-xmc --without-dbus --without- libzma [...] checking for CAIRO... yes checking for PANGOCAIRO... no configure: error: Test for PangoCairo failed. *** We require Pango with the optional support for Cairo compiled in. *** See the file 'INSTALL' for more help.
[3] The config.log file after trying to compile gimp for Windows: $ cat config.log
[...]
configure:18051: checking for CAIRO
configure:18058: $PKG_CONFIG --exists --print-errors "cairo >= 1.10.2" configure:18061: $? = 0
configure:18075: $PKG_CONFIG --exists --print-errors "cairo >= 1.10.2" configure:18078: $? = 0
configure:18136: result: yes
configure:18143: checking for PANGOCAIRO configure:18150: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.29.4 pangoft2"
Package pangoft2 was not found in the pkg-config search path. Perhaps you should add the directory containing `pangoft2.pc' to the PKG_CONFIG_PATH environment variable No package 'pangoft2' found
configure:18153: $? = 1
configure:18167: $PKG_CONFIG --exists --print-errors "pangocairo >= 1.29.4 pangoft2"
Package pangoft2 was not found in the pkg-config search path. Perhaps you should add the directory containing `pangoft2.pc' to the PKG_CONFIG_PATH environment variable No package 'pangoft2' found
configure:18170: $? = 1
configure:18184: result: no
No package 'pangoft2' found
configure:18200: error: Test for PangoCairo failed. *** We require Pango with the optional support for Cairo compiled in. *** See the file 'INSTALL' for more help. [...]
_______________________________________________ gimp-developer-list mailing list
List address: gimp-developer-list@gnome.org List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer- list
List archives: https://mail.gnome.org/archives/gimp-developer-list_______________________________________________ gimp-developer-list mailing list
List address: gimp-developer-list@gnome.org List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list List archives: https://mail.gnome.org/archives/gimp-developer-list