[-- Attachment #1: Type: text/plain, Size: 1781 bytes --]
Hi,
thanks for the report!
fixed in guix master commit a099d833af3afe69c50dbd016e9ed117462ca7ef.
Analysis:
According to https://linux.die.net/man/3/uuid users of the uuid lib should do:
>#include <uuid/uuid.h>
however, "man uuid" in Guix says to do
(that's from util-linux-2.35.1/libuuid/man/uuid.3)
> #include <uuid.h>
and f2fs-tools does (in mkfs/f2fs_format_main.c:21):
> #include <uuid.h>
I've also checked their git repository at
https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git/tree/mkfs/f2fs_format_main.c
and they still do:
> #include <uuid.h>
Then I tried
guix environment --pure f2fs-tools-static --ad-hoc gcc-toolchain
and we have:
echo $C_INCLUDE_PATH
>/gnu/store/w6266wwyy7ih2p22g8k4fzx7a1dj61qn-profile/include
But /gnu/store/w6266wwyy7ih2p22g8k4fzx7a1dj61qn-profile/include/uuid.h does not exist.
But /gnu/store/w6266wwyy7ih2p22g8k4fzx7a1dj61qn-profile/include/uuid/uuid.h does exist.
cat /gnu/store/w6266wwyy7ih2p22g8k4fzx7a1dj61qn-profile/lib/pkgconfig/uuid.pc
>Cflags: -I${includedir}/uuid
So I'd say that pkg-config is missing.
And indeed I had already worked around that in gnu/packages/linux.scm :
>#:configure-flags
> (let ((libuuid-static (assoc-ref %build-inputs "libuuid:static"))
> (libuuid (assoc-ref %build-inputs "libuuid")))
> (list
> (string-append "libuuid_CFLAGS=-I" libuuid "/include")
Here, suffix "/uuid" is missing.
> (string-append "libuuid_LIBS=-L" libuuid-static "/lib -luuid")
> (string-append "libblkid_CFLAGS=-I" libuuid "/include")
Here, suffix "/uuid" is missing.
Similarly for "/blkid".
> (string-append "libblkid_LIBS=-L" libuuid-static "/lib -lblkid")
Ok
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]