Arch Linux

Please read this before reporting a bug:

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!

FS#58447 - [freetype2] [grub] [php] things fail to build because freetype-config no longer exists

Attached to Project: Arch Linux
Opened by edac val (edacval) - Thursday, 03 May 2018, 23:35 GMT
Last edited by Andreas Radke (AndyRTR) - Wednesday, 11 December 2019, 12:51 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Pierre Schmitz (Pierre)
Ronald van Haren (pressh)
Andreas Radke (AndyRTR)
Jan Alexander Steffens (heftig)
Christian Hesse (eworm)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 11
Private No


After updating freetype2 to 2.9.1-1, grub build fails with error:
checking for freetype-config... no
configure: error: grub-mkfont was explicitly requested but can't be compiled (need freetype2 library)
==> ERROR: A failure occurred in build().

Additional info:
* package version(s)
grub 2:2.02-5

* config and/or log files etc.
I think, these two changes are the cause of the error:

Steps to reproduce:
asp checkout grub
cd grub/repos/core-x86_64
makepkg -sCcrf
This task depends upon

Closed by  Andreas Radke (AndyRTR)
Wednesday, 11 December 2019, 12:51 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Things have calmed down and project seem to respect now freetype pkg-config.
Comment by Eli Schwartz (eschwartz) - Friday, 04 May 2018, 00:38 GMT
  • Field changed: Summary ([grub] Fails to biuld → [grub] Fails to build)
  • Field changed: Status (Unconfirmed → Assigned)
  • Field changed: Category (Packages → Upstream Bugs)
  • Field changed: Architecture (x86_64 → All)
  • Task assigned to Christian Hesse (eworm), Ronald van Haren (pressh)
Can you report this to the grub-devel mailing list?
Or their bugtracker:

They should really stop using this gross *-config script and start using pkg-config properly.
Comment by Eli Schwartz (eschwartz) - Sunday, 06 May 2018, 02:24 GMT
So apparently php also fails to build, see  FS#58468 , duplicated with the current php PKGBUILD in trunk.

We have two packages in the repos which suck and don't use pkg-config, who knows how many more. :(

I'd love to say they should stop relying on it existing, but that doesn't help us right now...
Comment by Eli Schwartz (eschwartz) - Sunday, 06 May 2018, 02:26 GMT
heftig suggested just making freetype-config run pkg-config instead, but as a long-term measure we should really push upstreams to sort this out properly.

EDIT: okay, I'm tired...
Comment by Jan Alexander Steffens (heftig) - Sunday, 06 May 2018, 02:28 GMT
I didn't suggest adding a freetype-config script that runs pkg-config. I suggested patching the downstream packages to run pkg-config.
Comment by Jeff Hodd (jghodd) - Sunday, 06 May 2018, 19:22 GMT
Why does this have to be an either-or situation? Patching the downstream packages to use pkg-config would appear to be the ideal solution, but there's a small matter of what to do immediately to fix what is, for all intents and purposes, a broken freetype2 package. Why not immediately push a new build of freetype2 with freetype-config included, and work on patching the downstream packages to use pkg-config? If and when the downstream packages are patched to use pkg-config, they'll no longer use freetype-config, so the two can co-exist until you're certain that all downstream packages that depend on the existence of freetype-config are patched.
Comment by Christian Hesse (eworm) - Wednesday, 09 May 2018, 11:25 GMT
I fixed this for grub, but other packages are still affected.
Comment by Jeff Hodd (jghodd) - Wednesday, 09 May 2018, 14:35 GMT
Of course other packages are still affected. The short term fix is to add --enable-freetype-config to the call to configure in the PKGBUILD while the longer term fix is to hunt down and fix other packages that use freetype-config. There are likely quite a few out there that need/use freetype-config. Without the short-term fix, freetype2 is basically a broken package.
Comment by Eli Schwartz (eschwartz) - Wednesday, 09 May 2018, 17:05 GMT
It is *not* a broken package. It works fine for modern software.

How will we find the broken things if we paper over the error? It's not a hard fix, usually.
Comment by Marc-andre Lamothe (malbeth81) - Thursday, 10 May 2018, 14:29 GMT
The php56 AUR package also won't build because freetype-config is missing!

It's unacceptable that there is no way to install it other than to build the whole freetype package by hand!
This package is indeed broken until freetype-config is back or a new package provides this utility.

I ended up reverting the package to the previous version on my machine and I won't update it until it's fixed...
Comment by Eli Schwartz (eschwartz) - Thursday, 10 May 2018, 16:01 GMT

Our php package has been patched in [extra], therefore php is not a problem. The AUR package should adapt the same way.

Is there any other repo package that has issues?
Comment by Jan de Groot (JGC) - Thursday, 10 May 2018, 19:14 GMT
graphicsmagick, probably also imagemagick.
Comment by Clayton Craft (craftyguy) - Saturday, 19 May 2018, 03:06 GMT
This breaks building grub2 with the coreboot target. In other words, I can no longer build a BIOS for my system because the freetype2 package in Arch no longer ships with freetype-config.
Comment by Jaroslav Lichtblau (Dragonlord) - Saturday, 19 May 2018, 09:40 GMT
The mapnik package is affected too.

Upstream already aware -
Comment by Jan Alexander Steffens (heftig) - Saturday, 19 May 2018, 12:13 GMT
grub is easily fixed by passing FREETYPE="pkg-config freetype2" to configure.
Comment by Philip Müller (philm) - Tuesday, 29 May 2018, 23:49 GMT
With current packages it seems grub still doesn't find 'freetype2' package even with passing FREETYPE="pkg-config freetype2" to config. I currently tested 'trunk' from grub package.

GRUB2 will be compiled with following components:
Platform: i386-pc
With devmapper support: Yes
With memory debugging: Yes
With disk cache statistics: Yes
With boot time statistics: Yes
efiemu runtime: Yes
grub-mkfont: Yes
grub-mount: Yes
starfield theme: No (No build-time grub-mkfont)
With libzfs support: No (need zfs library)
Build-time grub-mkfont: No (need freetype2 library)
Without unifont (no build-time grub-mkfont)
With liblzma from -llzma (support for XZ-compressed mips images)
Comment by Philip Müller (philm) - Wednesday, 30 May 2018, 00:14 GMT Comment by Tomash Khamlai (tkhamlai) - Saturday, 16 June 2018, 17:01 GMT
Is it fixed? Cannot get php71
Comment by loqs (loqs) - Saturday, 16 June 2018, 18:01 GMT Comment by Neil Munday (NeilMunday) - Friday, 17 August 2018, 20:29 GMT
@eschwartz sdl2_ttf also fails to build as freetype-config is missing.
Comment by Christian Hesse (eworm) - Friday, 17 August 2018, 21:24 GMT
BTW, I've fixed inkscape for poppler rebuild.
Comment by Beebo (Beebo) - Wednesday, 22 August 2018, 20:56 GMT
gnustep-back fails to build with the correct backend without freetype-config. Graphics are displayed incorrectly as a result.
Comment by Pellegrino Prevete (tallero) - Thursday, 20 December 2018, 05:35 GMT
libgnomeprint from aur do not compile, too.
Comment by Willem Vermin (wvermin) - Saturday, 27 July 2019, 11:58 GMT
Had the same error compiling mythtv-0.29

Fixed it by creating /usr/local/freetype-config:

pkgconf "$@" freetype2

And chmod +x /usr/local/bin/freetype-config