FS#40313 - [cairo] build fails
Attached to Project:
Arch Linux
Opened by Joel Teichroeb (klusark) - Sunday, 11 May 2014, 20:14 GMT
Last edited by Andreas Radke (AndyRTR) - Friday, 30 May 2014, 14:11 GMT
Opened by Joel Teichroeb (klusark) - Sunday, 11 May 2014, 20:14 GMT
Last edited by Andreas Radke (AndyRTR) - Friday, 30 May 2014, 14:11 GMT
|
Details
Description:
(cd . && sh ./make-cairo-boilerplate-constructors.sh cairo-boilerplate-getopt.c cairo-boilerplate-system.c cairo-boilerplate.c cairo-boilerplate-xlib.c cairo-boilerplate-xcb.c cairo-boilerplate-egl.c cairo-boilerplate-glx.c cairo-boilerplate-script.c cairo-boilerplate-ps.c cairo-boilerplate-pdf.c cairo-boilerplate-svg.c ) > cairo-boilerplate-constructors.c CC cairo-boilerplate-constructors.lo CCLD libcairoboilerplate.la make[5]: Leaving directory '/build/cairo/src/cairo-1.12.16/boilerplate' CCLD cairo-sphinx /tmp/ccIUTScz.ltrans0.ltrans.o: In function `main': ccIUTScz.ltrans0.o:(.text.startup+0x13d): undefined reference to `cairo_boilerplate_get_target_by_name' ccIUTScz.ltrans0.o:(.text.startup+0x191): undefined reference to `cairo_boilerplate_xmalloc' ccIUTScz.ltrans0.o:(.text.startup+0x26d): undefined reference to `cairo_boilerplate_xmalloc' ccIUTScz.ltrans0.o:(.text.startup+0x410): undefined reference to `cairo_boilerplate_xmalloc' ccIUTScz.ltrans0.o:(.text.startup+0x591): undefined reference to `cairo_boilerplate_xmalloc' ccIUTScz.ltrans0.o:(.text.startup+0x5f2): undefined reference to `cairo_boilerplate_xmalloc' /tmp/ccIUTScz.ltrans0.ltrans.o:ccIUTScz.ltrans0.o:(.text.startup+0x673): more undefined references to `cairo_boilerplate_xmalloc' follow /tmp/ccIUTScz.ltrans0.ltrans.o: In function `main': ccIUTScz.ltrans0.o:(.text.startup+0x99b): undefined reference to `cairo_boilerplate_xrealloc' ccIUTScz.ltrans0.o:(.text.startup+0xc2d): undefined reference to `cairo_boilerplate_xrealloc' ccIUTScz.ltrans0.o:(.text.startup+0xfd7): undefined reference to `cairo_boilerplate_xrealloc' ccIUTScz.ltrans0.o:(.text.startup+0x11ca): undefined reference to `cairo_boilerplate_xrealloc' /tmp/ccIUTScz.ltrans1.ltrans.o: In function `_surface_create.lto_priv.8': ccIUTScz.ltrans1.o:(.text+0x56): undefined reference to `cairo_boilerplate_xmalloc' /tmp/ccIUTScz.ltrans1.ltrans.o: In function `get_surface_size': ccIUTScz.ltrans1.o:(.text+0x153): undefined reference to `cairo_boilerplate_xmalloc' /tmp/ccIUTScz.ltrans1.ltrans.o: In function `_context_create.lto_priv.9': ccIUTScz.ltrans1.o:(.text+0x1d8): undefined reference to `cairo_boilerplate_xmalloc' /tmp/ccIUTScz.ltrans1.ltrans.o: In function `recorder.lto_priv.11': ccIUTScz.ltrans1.o:(.text+0xf54): undefined reference to `cairo_boilerplate_xmalloc' ccIUTScz.ltrans1.o:(.text+0x114a): undefined reference to `cairo_boilerplate_xrealloc' collect2: error: ld returned 1 exit status Makefile:527: recipe for target 'cairo-sphinx' failed make[4]: *** [cairo-sphinx] Error 1 make[4]: Leaving directory '/build/cairo/src/cairo-1.12.16/util/cairo-sphinx' Makefile:706: recipe for target 'all-recursive' failed make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory '/build/cairo/src/cairo-1.12.16/util' Makefile:498: recipe for target 'all' failed make[2]: *** [all] Error 2 make[2]: Leaving directory '/build/cairo/src/cairo-1.12.16/util' Makefile:632: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/build/cairo/src/cairo-1.12.16' Makefile:483: recipe for target 'all' failed make: *** [all] Error 2 ==> ERROR: A failure occurred in build(). Aborting... Steps to reproduce: sudo extra-x86_64-build |
This task depends upon
I experienced this when trying to build cairo from source with cerbero. But the PKGBUILD also fails.
There's no fix in cairo git so far.
I was told on IRC to add "-flto -ffat-lto-objects" to CFLAGS.
When I try the flags from IRC or JGC's flags, I get a linker error in the tests directory:
/tmp/ccvkGzy8.ltrans0.ltrans.o: In function `main':
ccvkGzy8.ltrans0.o:(.text.startup+0x16eb): undefined reference to `_cairo_getopt'
collect2: error: ld returned 1 exit status
Makefile:1487: recipe for target 'cairo-test-suite' failed
make[4]: *** [cairo-test-suite] Error 1
How do I get this built?