View previous topic :: View next topic |
Author |
Message |
Incomplet n00b
Joined: 12 Apr 2012 Posts: 43
|
Posted: Thu May 03, 2012 10:37 am Post subject: Cairo fails to emerge [SOLVED] |
|
|
When I try to emerge cairo (1.10.2-r1 and r2), it fails to compile tossing errors about not being able to use threads and then all the mutex objects fail to build.
The original error said to define CAIRO_NO_MUTEX to 1, so I set up CAIRO_NO_MUTEX="1" in make.conf, and that did nothing. I tried setting it from the command line, and more nothing.
I've tried tinkering with a few other things like the "threads" flag but nothing works.
[ebuild N ] x11-libs/cairo-1.10.2-r2 USE="X glib opengl svg (-aqua) -debug -directfb -doc (-drm) (-gallium) (-openvg) -qt4 -static-libs -xcb"
Environment
Build Log
Last edited by Incomplet on Thu May 03, 2012 6:14 pm; edited 1 time in total |
|
Back to top |
|
|
PaulBredbury Watchman
Joined: 14 Jul 2005 Posts: 7310
|
Posted: Thu May 03, 2012 12:27 pm Post subject: |
|
|
Probably not related, but I doubt you want to compile cairo with opengl support.
Last time I tried --enable-gl, gtk+-2 wouldn't compile, and I believe it doesn't work well with nvidia's video driver. |
|
Back to top |
|
|
Incomplet n00b
Joined: 12 Apr 2012 Posts: 43
|
Posted: Thu May 03, 2012 12:30 pm Post subject: |
|
|
Ha yeah I noticed there's a note about opengl support being experimental, so I went back and changed it to directfb.
No, that didn't help it compile any better XD. |
|
Back to top |
|
|
VoidMage Watchman
Joined: 14 Oct 2006 Posts: 6196
|
Posted: Thu May 03, 2012 3:58 pm Post subject: |
|
|
Well, the first explicit error is:
Incomplet wrote: | 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." |
but the first interesting result is actually:
Incomplet wrote: | checking for cairo's pthread feature...
checking whether cairo's pthread feature could be enabled... no (can't link with -lpthread or -pthread) |
so, check your config.log. |
|
Back to top |
|
|
Incomplet n00b
Joined: 12 Apr 2012 Posts: 43
|
Posted: Thu May 03, 2012 4:34 pm Post subject: |
|
|
There isn't a clear config.log in var/tmp/portage/x11-libs/cairo-1.10.2-r1/temp.
There are a few files that look like they could be a config log, but their contents are all basically identical to the "is expanded from..." stuff at the beginning of the build log. Is there somewhere else I should be looking?
EDIT: There is something else strange that might be responsible:
checking for native atomic primitives... intel
checking whether atomic ops require a memory barrier... yes
I'm definitely not running intel hardware, so that might be why it fails to find the correct locking functions. I have no idea how to fix that, though.
EDIT2: nevermind. Found a similar old thread, and the intel thing probably has nothing to do with it. However, I still can't find anything else interesting .
EDIT3: Ok.. what would cause it to fail to link to pthreads? I'm not real sure what to start rebuilding x.x. The only things I can think of are glibc and the kernel headers, and I already rebuilt my kernel headers. Do my compiled kernel settings have any effect on that? |
|
Back to top |
|
|
VoidMage Watchman
Joined: 14 Oct 2006 Posts: 6196
|
Posted: Thu May 03, 2012 5:21 pm Post subject: |
|
|
config.log is (well, in most of the cases, beside recursive configure, obviously) in ${WORKDIR}. |
|
Back to top |
|
|
Incomplet n00b
Joined: 12 Apr 2012 Posts: 43
|
Posted: Thu May 03, 2012 6:14 pm Post subject: |
|
|
Well, if I don't ask stupid questions, I won't learn anything . Also, I'm working in a pure console, no MC or anything, so I'm fairly blind.
However, thanks, I nailed it. For some unknown reason it was spamming my LDFLAGS when it did its conf checking, and gcc returned "unknown option" for all of them, which returned false negatives for a bunch of things. |
|
Back to top |
|
|
HeXiLeD Veteran
Joined: 20 Aug 2005 Posts: 1159 Location: Online
|
Posted: Sat Apr 05, 2014 4:57 am Post subject: |
|
|
Quote: | The original error said to define CAIRO_NO_MUTEX to 1, so I set up CAIRO_NO_MUTEX="1" in make.conf, and that did nothing. I tried setting it from the command line, and more nothing. |
Same for me. Adding it to make.conf was useless.
[ebuild U ] x11-libs/cairo-1.12.16 [1.12.14-r4] USE="X (-aqua) -debug -directfb -doc (-drm) (-gallium) (-gles2) glib -legacy-drivers -opengl -openvg (-qt4) -static-libs svg -valgrind -xcb -xlib-xcb" 0 kB
With X or -X the problem remains. _________________ Do you hear the sound of inevitability?
With age, comes great grumpiness and that, was 20 years ago...
CertFP: becbbd161d5a5c31de3c45171b77bf710911db29 / d985d21f89fe2977b593c4d381a1a86802e62990d9328d893db76d59f9935244 |
|
Back to top |
|
|
|