pkgconf 3.0.4-1: personality files installed in /etc/pkgconfig/personality.d but binary searches /usr/{lib,share}/pkgconfig/personality.d
"Onyeka \(Oni\) Obi via Cygwin" <[email protected]> Mon, 27 Jul 2026 14:37:04 -0000
| Newsgroups | gmane.os.cygwin |
|---|---|
| Message-ID | <[email protected]> |
Hi,
The pkgconf 3.0.4-1 update (2026-07-26) appears to have a packaging
mismatch that breaks all cross-personality lookups, and with them a
large number of CI pipelines that build OCaml/opam projects on Windows
(opam probes mingw-w64 libraries via `pkgconf
--personality=<triplet>-w64-mingw32 <lib>`).
Details:
- pkgconf 3.0.4-1 still installs the personality files at
`/etc/pkgconfig/personality.d/{i686,x86_64}-w64-mingw32.personality`,
same as 2.5.1-1.
- But libpkgconf8 3.0.4-1 is compiled with the personality search path
`/usr/lib/pkgconfig/personality.d:/usr/share/pkgconfig/personality.d`
(visible with `strings /usr/bin/cygpkgconf-8.dll`), while
libpkgconf7 2.5.1-1 used `/etc/pkgconfig/personality.d`. I suspect
the switch to the meson build changed the default personality dir.
- When the personality file is not found, libpkgconf silently falls
back to the default (native) personality
(`pkgconf_cross_personality_find` returns
`pkgconf_cross_personality_default()`), so
`pkgconf --personality=x86_64-w64-mingw32 gmp` searches the native
paths, finds no gmp.pc, and exits 1 with no diagnostic.
Reproduction (on an up-to-date installation with mingw64-x86_64-gmp
installed):
$ pkgconf --personality=x86_64-w64-mingw32 gmp; echo $? 1
Expected (2.5.1-1 behavior): exit 0.
Workaround we are using in CI, since the XDG lookup path is consulted
too:
export XDG_DATA_DIRS=/etc:/usr/local/share:/usr/share
Suggested fix: either configure the personality directory back to
/etc/pkgconfig/personality.d when building, or move the personality
files to /usr/share/pkgconfig/personality.d in the packaging.
Impact context: every GitHub Actions workflow using ocaml/setup-ocaml
on windows-latest with mingw depexts (gmp, zlib, ...) started failing
within hours of the 3.0.4-1 release; examples include rocq-prover/rocq
and ahrefs/ocannl.
Thanks for all the work on Cygwin!
Onyeka (Oni) Obi
[GIthub](https://github.com/MavenRain)
[LinkedIn](https://www.linkedin.com/in/themathdoc)
--
Problem reports: https://cygwin.com/problems.html
FAQ: https://cygwin.com/faq/
Documentation: https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple