From: Alan McKinnon <alan.mckinnon@gmail.com>
To: gentoo-user@lists.gentoo.org
Subject: Re: [gentoo-user] Anyone else having trouble with x11-libs/cairo?
Date: Thu, 1 Dec 2016 20:33:43 +0200 [thread overview]
Message-ID: <829f3608-cd6d-a5ab-8af7-34f7dac75d96@gmail.com> (raw)
In-Reply-To: <1c40fd34-da20-2607-d42f-9241d7d2c51b@danielquinn.org>
On 01/12/2016 16:34, Daniel Quinn wrote:
> I just won’t build for me and my research on the forums and BGO keeps
> turning up very old bugs that don’t really feel like they apply to my
> case exactly.
>
> What’s happened so far:
>
> * I installed a complete GNOME/systemd system with no trouble (~amd64)
> * This installation included a perfect emerge of x11-libs/cairo
> * About a month later, I’ve been doing “emerge -auDN @world” every
> other day or so, and suddenly cairo needs to rebuild, and now it
> fails with a long slew of errors:
>
> |In file included from
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-mutex-type-private.h:45:0,
> from
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-scaled-font-private.h:45,
> from
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairoint.h:422,
> from
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-atomic.c:34:
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-mutex-impl-private.h:262:3:
> error: #error "XXX: No mutex implementation found. Cairo will not work
> with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and
> accept this limitation and compile cairo without thread-safety support."
> # error "XXX: No mutex implementation found. Cairo will not work with
> multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept
> this limitation and compile cairo without thread-safety support." ^ In
> file included from
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-mutex-type-private.h:45:0,
> from
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-scaled-font-private.h:45,
> from
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairoint.h:422,
> from
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-atomic.c:34:
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-mutex-impl-private.h:271:11:
> error: unknown type name ‘cairo_mutex_impl_t’ typedef cairo_mutex_impl_t
> cairo_recursive_mutex_impl_t; ^ <lots of similar-looking errors>
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-mutex-type-private.h:161:9:
> error: unknown type name ‘cairo_mutex_impl_t’ typedef cairo_mutex_impl_t
> cairo_mutex_t; ^
> /var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6/src/cairo-botor-scan-converter.c:2076:1:
> warning: ‘botor_add_edge’ defined but not used [-Wunused-function]
> botor_add_edge (cairo_botor_scan_converter_t *self, ^ make[3]: ***
> [Makefile:2352: cairo-botor-scan-converter.lo] Error 1 make[3]: Leaving
> directory
> '/var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6-abi_x86_64.amd64/src'
> make[2]: *** [Makefile:1950: all] Error 2 make[2]: Leaving directory
> '/var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6-abi_x86_64.amd64/src'
> make[1]: *** [Makefile:906: all-recursive] Error 1 make[1]: Leaving
> directory
> '/var/tmp/portage/x11-libs/cairo-1.14.6/work/cairo-1.14.6-abi_x86_64.amd64'
> make: *** [Makefile:757: all] Error 2 |
>
> The digging I do online mentions something about custom LDFLAGS, but
> since I don’t even know what those are, I’m thinking that’s not it. I’m
> not running any special overlays, but I am running a complete ~amd64
> installation. I’ve try running |revdep-rebuild| (nothing to do) and
> |emerge @preserved-rebuild| just loops in cairo and explodes again.
>
> Anyone have some tips to get me through this?
Yeah, the tip is you and we get to do some original research :-)
It's quite unlikely that the maintainer committed a broken ebuild that
simply cannot work, so we have to assume you are running into something
fairly uncommon and somewhat unique to your environment. My first choice
is your USE flags - you probably selected a combination that doesn't
work that the maintainer isn't aware of and so there's no detection for
it in the ebuild.
cairo-1.14.6 does in fact build on ~amd64,and your problem is related to
a lack of mutex support. Here's my USE for cairo, compres it to yours:
[I] x11-libs/cairo
Available versions: 1.14.2^t (~)1.14.2-r1^t (~)1.14.4^t 1.14.6^t
**9999^t {X aqua debug directfb gles2 +glib opengl static-libs +svg
valgrind xcb xlib-xcb ABI_MIPS="n32 n64 o32" ABI_PPC="32 64"
ABI_S390="32 64" ABI_X86="32 64 x32"}
Installed versions: 1.14.6^t(19:08:54 15/11/2016)(X glib opengl
svg xcb -aqua -debug -directfb -gles2 -static-libs -valgrind -xlib-xcb
ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64"
ABI_X86="32 64 -x32")
Homepage: http://cairographics.org/
Description: A vector graphics library with cross-device
output support
Also what is your global setting in USE for "threads"?
--
Alan McKinnon
alan.mckinnon@gmail.com
next prev parent reply other threads:[~2016-12-01 18:35 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-01 14:34 [gentoo-user] Anyone else having trouble with x11-libs/cairo? Daniel Quinn
2016-12-01 18:33 ` Alan McKinnon [this message]
2016-12-02 9:57 ` Daniel Quinn
2016-12-02 20:21 ` Mick
2016-12-06 17:15 ` Daniel Quinn
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=829f3608-cd6d-a5ab-8af7-34f7dac75d96@gmail.com \
--to=alan.mckinnon@gmail.com \
--cc=gentoo-user@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox