Alexis Praga <alexis.pr...@gmail.com> writes:

> Hi guys,
>
> Thanks to Li-Wen Hsu [1], I now know the new version does not build on 11.4 
> with :
>     /usr/bin/ld: unrecognized option '-plugin'
> Which seems due to the '-flto' flag according to this issue :
>     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=230137
> I've tried the fix mentioned there (adding '-fuse-ld=lld'), but it's not a 
> flag recognized by clang.
>
> Removing '-flto' allows to build kitty but some tests fails.
> Does someone knows on how to get around this compiler issue (only for 11x)?

-fuse-ld=lld should work fine on 11.4 aarch64/amd64/armv6/armv7/i386 as
it uses clang as /usr/bin/cc and has /usr/bin/ld.lld but may[1] break
11.4 powerpc/powerpc64 which still has gcc as /usr/bin/cc. I've used
-fuse-ld=lld in a number of ports to unbreak -flto[2] or workaround
/usr/bin/ld.bfd bugs[3] which weren't present in ld.bfd from devel/binutils.
Other port maintainers do something similar.

Can you show the build error from -fuse-ld=lld?

[1] When a port defines USES=compiler:c11 (or similar due to -std=*) it uses
    lang/gcc10 on FreeBSD < 13 powerpc* which doesn't need -fuse-ld=lld
    because /usr/local/bin/ld is used by default. However, lang/gcc* with
    -flto will probably ignore -fuse-ld=lld due to IR/bytecode incompatibility
    and coincidentally avoid https://bugs.llvm.org/show_bug.cgi?id=47353
[2] Examples: multimedia/svt-*, graphics/mesa-devel
[3] Examples: devel/basu, games/veloren, SVT* options in multimedia/ffmpeg
_______________________________________________
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to