Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 391213 - gnome-base/librsvg-2.34.2 - work/librsvg-2.34.2/rsvg-cairo-render.h:32:19: fatal error: cairo.h: No such file or directory
Summary: gnome-base/librsvg-2.34.2 - work/librsvg-2.34.2/rsvg-cairo-render.h:32:19: fa...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: All Linux
: Normal normal with 2 votes (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL: https://bugs.freedesktop.org/show_bug...
Whiteboard:
Keywords:
: 399283 399805 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-11-21 10:52 UTC by giovanni.bobbio
Modified: 2013-01-10 13:57 UTC (History)
13 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
config.log (config.log,41.51 KB, text/plain)
2011-11-21 11:51 UTC, giovanni.bobbio
Details
build.log (build.log,31.61 KB, text/plain)
2011-11-21 11:52 UTC, giovanni.bobbio
Details
Verbose log (build.log,59.82 KB, text/plain)
2011-11-22 20:14 UTC, giovanni.bobbio
Details

Note You need to log in before you can comment on or make changes to this bug.
Description giovanni.bobbio 2011-11-21 10:52:56 UTC
The build ends with:
In file included from <stdin>:19:0:
/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/rsvg-cairo-render.h:32:19: fatal error: cairo.h: No such file or directory
compilation terminated.

emerge --info:
Portage 2.1.10.36 (default/linux/x86/10.0/desktop/kde, gcc-4.5.3, glibc-2.13-r4, 3.1.1-gentoo i686)
=================================================================
System uname: Linux-3.1.1-gentoo-i686-Intel-R-_Core-TM-_i7_CPU_M_620_@_2.67GHz-with-gentoo-2.1
Timestamp of tree: Mon, 21 Nov 2011 09:30:01 +0000
ccache version 3.1.6 [enabled]
app-shells/bash:          4.2_p10
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.2-r3, 3.2.2
dev-util/ccache:          3.1.6
dev-util/cmake:           2.8.6-r3
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1
sys-apps/openrc:          0.9.4
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.1-r1
sys-devel/binutils:       2.21.1-r1
sys-devel/gcc:            4.5.3-r1
sys-devel/gcc-config:     1.5-r2
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 2.6.39 (virtual/os-headers)
sys-libs/glibc:           2.13-r4
Repositories: gentoo
ACCEPT_KEYWORDS="x86 ~x86"
ACCEPT_LICENSE="* -@EULA PUEL skype-eula googleearth AdobeFlash-10.1 dlj-1.1 Oracle-BCLA-JavaSE"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=native -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y --keep-going --jobs"
FEATURES="assume-digests binpkg-logs ccache distlocks ebuild-locks fixlafiles news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="en it"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa apng bash-completion bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus declarative dhcpcd dri dts dvd dvdr embedded emboss encode exif extensions fam firefox flac gd gdbm gdu gif git gnutls gpm iconv id3tag idn ipod java jpeg kde kipi lastfm lcms libnotify lm_sensors mad matroska mdnsresponder-compat minizip mmx mmxext mng modules mp3 mp4 mpeg mudflap mysql ncurses networkmanager nls nptl nptlonly ntp nvidia ogg opengl openmp pam pango pcre pdf phonon plasma png policykit ppds pppd qt3support qt4 rdesktop readline samba sdl secure-delete semantic-desktop sensord session spell sql sse sse2 sse3 sse4 ssl ssse3 startup-notification svg symlink sysfs tcpd thumbnail tiff truetype udev unicode usb vcd vnc vorbis wifi win32codecs x264 x86 xcb xcomposite xinerama xml xorg xscreensaver xulrunner xv xvid zeroconf zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="*" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en it" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" SANE_BACKENDS="mustek_usb" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Rafał Mużyło 2011-11-21 11:45:31 UTC
Attach full build log and config.log - most likely, it will be something pkg-config related.
Comment 2 giovanni.bobbio 2011-11-21 11:51:14 UTC
Created attachment 293295 [details]
config.log
Comment 3 giovanni.bobbio 2011-11-21 11:52:42 UTC
Created attachment 293297 [details]
build.log
Comment 4 Yuriy Dmitriev 2011-11-21 22:14:11 UTC
I confirm this bug. emerge cairo do nothing(


~amd64
Comment 5 Nikolay D Hodyunya 2011-11-22 14:16:59 UTC
confirm
Comment 6 genfool 2011-11-22 17:20:15 UTC
confirm
Comment 7 Pacho Ramos gentoo-dev 2011-11-22 18:51:32 UTC
I cannot reproduce this with:

[ebuild   R    ] x11-libs/cairo-1.10.2-r1  USE="X glib opengl svg xcb (-aqua) -debug -directfb -doc (-drm) (-gallium) (-openvg) -qt4 -static-libs" 0 kB


Try disabling qt4 USE flag...
Comment 8 Dominik Strehlke 2011-11-22 19:04:54 UTC
I re-merged =cairo-1.10.2-r1 with qt4-useflag disabled. Same problem when compiling librsvg afterwards.
Comment 9 giovanni.bobbio 2011-11-22 19:06:00 UTC
(In reply to comment #7)
> I cannot reproduce this with:
> 
> [ebuild   R    ] x11-libs/cairo-1.10.2-r1  USE="X glib opengl svg xcb (-aqua)
> -debug -directfb -doc (-drm) (-gallium) (-openvg) -qt4 -static-libs" 0 kB
> 
> 
> Try disabling qt4 USE flag...

USE="X glib opengl svg xcb (-aqua) -debug -directfb -doc (-drm) (-gallium) (-openvg) -qt4 -static-libs"

Same error.
Comment 10 Pacho Ramos gentoo-dev 2011-11-22 19:48:03 UTC
Lets compare our USE flags then:

[ebuild   R    ] x11-libs/cairo-1.10.2-r1  USE="X glib opengl svg xcb (-aqua) -debug -directfb -doc (-drm) (-gallium) (-openvg) -qt4 -static-libs" 0 kB
[ebuild   R   ~] gnome-base/librsvg-2.34.2  USE="gtk gtk3 introspection -doc -tools" 0 kB
Comment 11 Pacho Ramos gentoo-dev 2011-11-22 19:48:26 UTC
Are you still able to recompile old 2.34.1-r1 version in your systems?
Comment 12 giovanni.bobbio 2011-11-22 19:55:50 UTC
(In reply to comment #11)
> Are you still able to recompile old 2.34.1-r1 version in your systems?

Yes.

# emerge -1v x11-libs/cairo librsvg

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] x11-libs/cairo-1.10.2-r1  USE="X glib opengl qt4 svg xcb (-aqua) -debug -directfb -doc (-drm) (-gallium) (-openvg) -static-libs" 0 kB                                                                                                                        
[ebuild   R    ] gnome-base/librsvg-2.34.1-r1  USE="-doc -gtk -gtk3 -tools" 0 kB

Total: 2 packages (2 reinstalls), Size of downloads: 0 kB

>>> Verifying ebuild manifests
>>> Starting parallel fetch
>>> Emerging (1 of 2) x11-libs/cairo-1.10.2-r1
>>> Installing (1 of 2) x11-libs/cairo-1.10.2-r1
>>> Emerging (2 of 2) gnome-base/librsvg-2.34.1-r1
>>> Installing (2 of 2) gnome-base/librsvg-2.34.1-r1
>>> Jobs: 2 of 2 complete                           Load avg: 2.43, 1.40, 0.93
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.
Comment 13 giovanni.bobbio 2011-11-22 20:04:05 UTC
(In reply to comment #11)
> Are you still able to recompile old 2.34.1-r1 version in your systems?

Note that adding the gtk and gtk3 flags to librsvg-2.34.2 doesn't help.
Comment 14 Pacho Ramos gentoo-dev 2011-11-22 20:04:35 UTC
Try toggling "introspection" USE flag for librsvg
Comment 15 Alexandre Rostovtsev (RETIRED) gentoo-dev 2011-11-22 20:07:02 UTC
(In reply to comment #3)
> Created attachment 293297 [details]
> build.log

Unfortunately, the build log isn't detailed enough to see what might be causing the failure.

Please attach the build log from

MAKEOPTS="V=1" emerge -1 librsvg

(it will make the log more verbose)
Comment 16 giovanni.bobbio 2011-11-22 20:12:13 UTC
Toggling introspection... doesn't work.
Comment 17 giovanni.bobbio 2011-11-22 20:14:10 UTC
Created attachment 293433 [details]
Verbose log
Comment 18 Robert 2011-11-23 02:40:35 UTC
Just wanted to confirm that i get this bug on ~amd64 as well. tried all the things listed here as well with no luck. 

My cairo USE looks just like this:

[ebuild   R    ] x11-libs/cairo-1.10.2-r1  USE="X glib opengl qt4 svg xcb
(-aqua) -debug -directfb -doc (-drm) (-gallium) (-openvg) -static-libs" 0 kB  

and i get the exact same error for librsvg.
Comment 19 genfool 2011-11-23 15:06:17 UTC
USE="-introspection" emerge librsvg This worked for me,
Yesterday I read an old bug that suggested to change compile opt to -j1
It still failed, reading this thread I tried
emerge -1v x11-libs/cairo librsvg
It still failed, introspection worked, but I am also still set to -j1, not sure if that makes a difference.
Comment 20 giovanni.bobbio 2011-11-23 15:44:04 UTC
(In reply to comment #19)
> USE="-introspection" emerge librsvg This worked for me,
> Yesterday I read an old bug that suggested to change compile opt to -j1
> It still failed, reading this thread I tried
> emerge -1v x11-libs/cairo librsvg
> It still failed, introspection worked, but I am also still set to -j1, not sure
> if that makes a difference.

Yes, USE="-introspection" works. "-j 1" is not relevant.

I am not sure why yesterday toggling introspection didn't seem to make a difference, probably a mistake on my part.
Comment 21 Pacho Ramos gentoo-dev 2011-11-23 16:15:52 UTC
The most surprising part is that it works for me even with introspection enabled... but at least we know where should we look for :/
Comment 22 genfool 2011-11-23 16:30:05 UTC
Am now confused, just to be sure my box was completely up to date, emerge --sync and see the new version is out with the introspect flag. I failed with exact same error as before. 

In file included from <stdin>:19:
/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/rsvg-cairo-render.h:32:19: error: cairo.h: No such file or directory

USE="-introspection" emerge librsvg
I just reran it with this command and it installed with no error for second time.

Not sure why it failed with -uvaND world just a few min ago when it was already installed and scheduled for update with the new introspection flag.

alculating dependencies... done!
[ebuild   R    ] gnome-base/librsvg-2.34.2  USE="gtk introspection* -doc -gtk3 -tools" 0 kB
[ebuild  N     ] net-libs/libtirpc-0.2.2-r1  USE="-kerberos -static-libs" 0 kB
[ebuild     U  ] kde-base/plasma-workspace-4.7.3-r5 [4.7.3-r4] USE="handbook rss semantic-desktop xinerama (-aqua) -debug -google-gadgets -gps (-kdeenablefinal) -python -qalculate" 0 kB

Total: 3 packages (1 upgrade, 1 new, 1 reinstall), Size of downloads: 0 kB

See the issue?, I can install with USE=, but it fails with uavND and have tried 3 times, fails each time.
Comment 23 Alexandre Rostovtsev (RETIRED) gentoo-dev 2011-11-23 23:12:44 UTC
I have added a patch to fix bug #391215 (without a revision bump, since people who succeeded in building librsvg should not need to rebuild it).

I strongly suspect that the patch also fixes this bug. Please wait an hour or two, resync, and report whether you are still experiencing the build failure.

>  23 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
>  librsvg-2.34.2.ebuild, +files/librsvg-2.34.2-gir-filename.patch:
>  Add patch to fix parallel make failure when USE=introspection; many thanks to
>  Rafał Mużyło <galtgendo@o2.pl> for the solution (bug #391215). Should also
>  fix bug #391213. Thanks to all for reporting.
Comment 24 Geoff Madden 2011-11-24 08:06:44 UTC
I managed to get a compile,with the standard ebuild as of 24-11-2011. But had to link the necessary cairo*.h files,as the configure script appears to fail in finding these necessary files.

the following is the build info after doing this



ake  all-recursive
make[1]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2'
Making all in .
make[2]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2'
  GISCAN Rsvg-2.0.gir
/usr/include/glib-2.0/glib/gthread.h:347: syntax error, unexpected '{' in '  if ((gpointer) (__extension__ ({ G_STATIC_ASSERT (sizeof *(value_location) == sizeof (gpointer)); __sync_synchronize (); (gpointer) *(value_location); })) != ((void *)0))' at '{'
g-ir-scanner: Rsvg: warning: 109 warnings suppressed (use --warn-all to see them)
  GICOMP Rsvg-2.0.gir
make[2]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2'
Making all in gdk-pixbuf-loader
make[2]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gdk-pixbuf-loader'
  CC     libpixbufloader_svg_la-io-svg.lo
/bin/sh ../libtool --silent --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I..  -I.. -I.. -DGDK_PIXBUF_ENABLE_BACKEND -DG_LOG_DOMAIN=\"libpixbufloader-svg\"   -pthread -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng15 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng15 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/directfb -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -I/usr/include/libcroco-0.6 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -DHAVE_LIBCROCO=1   -O2 -march=athlon-xp -ggdb -pipe -c -o libpixbufloader_svg_la-io-svg.lo `test -f 'io-svg.c' || echo './'`io-svg.c
  CCLD   libpixbufloader-svg.la
make[2]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gdk-pixbuf-loader'
Making all in data
make[2]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/data'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/data'
Making all in tests
make[2]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tests'
Making all in pdiff
make[3]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tests/pdiff'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tests/pdiff'
Making all in .
make[3]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tests'
  CC     test-utils.lo
/bin/sh ../libtool --silent --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I. -I.. -I./pdiff -DTEST_DATA_DIR="\".\"" -DTEST_SRC_DIR="\"/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tests\"" -DTOP_SRC_DIR="\"..\"" -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng15 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/directfb -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore      -O2 -march=athlon-xp -ggdb -pipe -c -o test-utils.lo test-utils.c
  CCLD   libtest-utils.la
make[3]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tests'
make[2]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tests'
Making all in tools
make[2]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tools'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/tools'
Making all in doc
make[2]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/doc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/doc'
Making all in gtk-engine
make[2]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine'
Making all in examples
make[3]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine/examples'
Making all in bubble
make[4]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine/examples/bubble'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine/examples/bubble'
make[4]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine/examples'
make[4]: Nothing to be done for `all-am'.
make[4]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine/examples'
make[3]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine/examples'
make[3]: Entering directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine'
  CC     libsvg_la-svg-draw.lo
/bin/sh ../libtool --silent --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I..  -I.. -I.. -DG_LOG_DOMAIN=\"rsvg-engine-2\"   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng15 -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng15 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/directfb -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -I/usr/include/libcroco-0.6 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -DHAVE_LIBCROCO=1   -O2 -march=athlon-xp -ggdb -pipe -c -o libsvg_la-svg-draw.lo `test -f 'svg-draw.c' || echo './'`svg-draw.c
  CC     libsvg_la-svg-main.lo
/bin/sh ../libtool --silent --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I..  -I.. -I.. -DG_LOG_DOMAIN=\"rsvg-engine-2\"   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng15 -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng15 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/directfb -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -I/usr/include/libcroco-0.6 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -DHAVE_LIBCROCO=1   -O2 -march=athlon-xp -ggdb -pipe -c -o libsvg_la-svg-main.lo `test -f 'svg-main.c' || echo './'`svg-main.c
  CC     libsvg_la-svg-render.lo
/bin/sh ../libtool --silent --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I..  -I.. -I.. -DG_LOG_DOMAIN=\"rsvg-engine-2\"   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng15 -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng15 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/directfb -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -I/usr/include/libcroco-0.6 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -DHAVE_LIBCROCO=1   -O2 -march=athlon-xp -ggdb -pipe -c -o libsvg_la-svg-render.lo `test -f 'svg-render.c' || echo './'`svg-render.c
  CC     libsvg_la-svg-rc-style.lo
/bin/sh ../libtool --silent --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I..  -I.. -I.. -DG_LOG_DOMAIN=\"rsvg-engine-2\"   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/directfb -I/usr/include/libpng15 -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng15 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/directfb -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -I/usr/include/libcroco-0.6 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -DHAVE_LIBCROCO=1   -O2 -march=athlon-xp -ggdb -pipe -c -o libsvg_la-svg-rc-style.lo `test -f 'svg-rc-style.c' || echo './'`svg-rc-style.c
  CCLD   libsvg.la
make[3]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine'
make[2]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/gtk-engine'
make[1]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2'
localhost librsvg-2.34.2 # ls
aclocal.m4          librsvg-2.0.pc                       librsvg_2_la-rsvg-xml.lo   rsvg-base-file-util.c        rsvg-marker.h
AUTHORS             librsvg-2.0-uninstalled.pc           librsvg.def                rsvg-bpath-util.c            rsvg-mask.c
autom4te.cache      librsvg-2.la                         librsvg.doap               rsvg-bpath-util.h            rsvg-mask.h
cairo-deprecated.h  librsvg_2_la-librsvg-enum-types.lo   librsvg-enum-types.c       rsvg.c                       rsvg-paint-server.c
cairo-features.h    librsvg_2_la-librsvg-features.lo     librsvg-enum-types.h       rsvg-cairo-clip.c            rsvg-paint-server.h
cairo.h             librsvg_2_la-rsvg-affine.lo          librsvg-features.c         rsvg-cairo-clip.h            rsvg-path.c
cairo-version.h     librsvg_2_la-rsvg-base-file-util.lo  librsvg-features.h         rsvg-cairo-draw.c            rsvg-path.h
ChangeLog           librsvg_2_la-rsvg-base.lo            librsvg-features.h.in      rsvg-cairo-draw.h            rsvg-private.h
compile             librsvg_2_la-rsvg-bpath-util.lo      librsvg.pc.in              rsvg-cairo.h                 rsvg-shapes.c
config.guess        librsvg_2_la-rsvg-cairo-clip.lo      librsvg.spec               rsvg-cairo-render.c          rsvg-shapes.h
config.h            librsvg_2_la-rsvg-cairo-draw.lo      librsvg.spec.in            rsvg-cairo-render.h          rsvg-structure.c
config.h.in         librsvg_2_la-rsvg-cairo-render.lo    librsvg-uninstalled.pc.in  rsvg-cond.c                  rsvg-structure.h
config.log          librsvg_2_la-rsvg-cond.lo            librsvg-zip                rsvg-convert                 rsvg-styles.c
config.status       librsvg_2_la-rsvg-css.lo             librsvg-zip.in             rsvg-convert.c               rsvg-styles.h
config.sub          librsvg_2_la-rsvg-defs.lo            libtool                    rsvg_convert-rsvg-convert.o  rsvg-text.c
configure           librsvg_2_la-rsvg-file-util.lo       ltmain.sh                  rsvg-css.c                   rsvg-text.h
configure.in        librsvg_2_la-rsvg-filter.lo          Makefile                   rsvg-css.h                   rsvg-view
COPYING             librsvg_2_la-rsvg-gobject.lo         Makefile.am                rsvg-defs.c                  rsvg_view-test-display.o
COPYING.LIB         librsvg_2_la-rsvg-image.lo           Makefile.in                rsvg-defs.h                  rsvg-xml.c
data                librsvg_2_la-rsvg.lo                 missing                    rsvg-file-util.c             rsvg-xml.h
depcomp             librsvg_2_la-rsvg-marker.lo          NEWS                       rsvg-filter.c                s-enum-types-c
doc                 librsvg_2_la-rsvg-mask.lo            README                     rsvg-filter.h                s-enum-types-h
gdk-pixbuf-loader   librsvg_2_la-rsvg-paint-server.lo    rsvg                       rsvg-gobject.c               stamp-h1
gtk-doc.make        librsvg_2_la-rsvg-path.lo            rsvg.1                     rsvg.h                       test-display.c
gtk-engine          librsvg_2_la-rsvg-shapes.lo          Rsvg-2.0.gir               rsvg-image.c                 tests
INSTALL             librsvg_2_la-rsvg-structure.lo       Rsvg-2.0.typelib           rsvg-image.h                 TODO
install-sh          librsvg_2_la-rsvg-styles.lo          rsvg-affine.c              rsvg.in                      tools
introspection.m4    librsvg_2_la-rsvg-text.lo            rsvg-base.c                rsvg-marker.c

The files I had to link were cairo.h cairo-version.h cairo-deprecated.h & cairo-features.h
Comment 25 Pacho Ramos gentoo-dev 2011-11-24 09:06:31 UTC
Verify the if ebuild you are using is applying:
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/librsvg/files/librsvg-2.34.2-gir-filename.patch?view=markup

if not, you need to re-sync again
Comment 26 giovanni.bobbio 2011-11-24 09:18:19 UTC
   (In reply to comment #23)
> I have added a patch to fix bug #391215 (without a revision bump, since people
> who succeeded in building librsvg should not need to rebuild it).
> 
> I strongly suspect that the patch also fixes this bug. Please wait an hour or
> two, resync, and report whether you are still experiencing the build failure.
> 
> >  23 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
> >  librsvg-2.34.2.ebuild, +files/librsvg-2.34.2-gir-filename.patch:
> >  Add patch to fix parallel make failure when USE=introspection; many thanks to
> >  Rafał Mużyło <galtgendo@o2.pl> for the solution (bug #391215). Should also
> >  fix bug #391213. Thanks to all for reporting.

The current ebuild still fails with the cairo.h error if introspection is enabled, regardless of --jobs.
Comment 27 Mao PU 2011-11-24 09:26:19 UTC
(In reply to comment #25)
> Verify the if ebuild you are using is applying:
> http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/librsvg/files/librsvg-2.34.2-gir-filename.patch?view=markup
> 
> if not, you need to re-sync again

I confirm, that I am using this exact ebuild. Compiling with USE="introspection" fails, with USE="-introspection" succeeds on ~amd64.
Comment 28 Rafał Mużyło 2011-11-24 12:06:39 UTC
Could one of you, after the build fails, go into ${WORKDIR} and run:
g-ir-scanner  --verbose --add-include-path=. --namespace=Rsvg --nsversion=2.0 --libtool="/bin/sh ./libtool" --pkg=pango --pkg=libxml-2.0 --include=GLib-2.0 --include=GObject-2.0 --include=Gio-2.0 --include=cairo-1.0 --include=GdkPixbuf-2.0 --pkg-export=librsvg-2.0  --library=librsvg-2.la  -I.  rsvg-affine.c librsvg-features.c rsvg-bpath-util.c rsvg-bpath-util.h rsvg-css.c rsvg-css.h rsvg-defs.c rsvg-defs.h rsvg-image.c rsvg-image.h rsvg-paint-server.c rsvg-paint-server.h rsvg-path.c rsvg-path.h rsvg-private.h rsvg-base-file-util.c rsvg-filter.c rsvg-filter.h rsvg-marker.c rsvg-marker.h rsvg-mask.c rsvg-mask.h rsvg-shapes.c rsvg-shapes.h rsvg-structure.c rsvg-structure.h rsvg-styles.c rsvg-styles.h rsvg-text.c rsvg-text.h rsvg-cond.c rsvg-base.c librsvg-enum-types.c rsvg-cairo-draw.c rsvg-cairo-draw.h rsvg-cairo-render.c rsvg-cairo-render.h rsvg-cairo-clip.h rsvg-cairo-clip.c rsvg.c rsvg-gobject.c rsvg-file-util.c rsvg-xml.c rsvg-xml.h rsvg.h rsvg-cairo.h librsvg-features.h librsvg-enum-types.h --output Rsvg-2.0.gir

and, as we're grasping at straws anyway, 'emerge -1pv pango gobject-introspection' ?
Comment 29 giovanni.bobbio 2011-11-24 12:50:59 UTC
(In reply to comment #28)
> Could one of you, after the build fails, go into ${WORKDIR} and run:
> g-ir-scanner  --verbose --add-include-path=. --namespace=Rsvg --nsversion=2.0
> --libtool="/bin/sh ./libtool" --pkg=pango --pkg=libxml-2.0 --include=GLib-2.0
> --include=GObject-2.0 --include=Gio-2.0 --include=cairo-1.0
> --include=GdkPixbuf-2.0 --pkg-export=librsvg-2.0  --library=librsvg-2.la  -I. 
> rsvg-affine.c librsvg-features.c rsvg-bpath-util.c rsvg-bpath-util.h rsvg-css.c
> rsvg-css.h rsvg-defs.c rsvg-defs.h rsvg-image.c rsvg-image.h
> rsvg-paint-server.c rsvg-paint-server.h rsvg-path.c rsvg-path.h rsvg-private.h
> rsvg-base-file-util.c rsvg-filter.c rsvg-filter.h rsvg-marker.c rsvg-marker.h
> rsvg-mask.c rsvg-mask.h rsvg-shapes.c rsvg-shapes.h rsvg-structure.c
> rsvg-structure.h rsvg-styles.c rsvg-styles.h rsvg-text.c rsvg-text.h
> rsvg-cond.c rsvg-base.c librsvg-enum-types.c rsvg-cairo-draw.c
> rsvg-cairo-draw.h rsvg-cairo-render.c rsvg-cairo-render.h rsvg-cairo-clip.h
> rsvg-cairo-clip.c rsvg.c rsvg-gobject.c rsvg-file-util.c rsvg-xml.c rsvg-xml.h
> rsvg.h rsvg-cairo.h librsvg-features.h librsvg-enum-types.h --output
> Rsvg-2.0.gir
> 
> and, as we're grasping at straws anyway, 'emerge -1pv pango
> gobject-introspection' ?

kien librsvg-2.34.2 # pwd
/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2
kien librsvg-2.34.2 # g-ir-scanner  --verbose --add-include-path=. --namespace=Rsvg --nsversion=2.0 --libtool="/bin/sh ./libtool" --pkg=pango --pkg=libxml-2.0 --include=GLib-2.0 --include=GObject-2.0 --include=Gio-2.0 --include=cairo-1.0 --include=GdkPixbuf-2.0 --pkg-export=librsvg-2.0  --library=librsvg-2.la  -I. rsvg-affine.c librsvg-features.c rsvg-bpath-util.c rsvg-bpath-util.h rsvg-css.c rsvg-css.h rsvg-defs.c rsvg-defs.h rsvg-image.c rsvg-image.h rsvg-paint-server.c rsvg-paint-server.h rsvg-path.c rsvg-path.h rsvg-private.h rsvg-base-file-util.c rsvg-filter.c rsvg-filter.h rsvg-marker.c rsvg-marker.h rsvg-mask.c rsvg-mask.h rsvg-shapes.c rsvg-shapes.h rsvg-structure.c rsvg-structure.h rsvg-styles.c rsvg-styles.h rsvg-text.c rsvg-text.h rsvg-cond.c rsvg-base.c librsvg-enum-types.c rsvg-cairo-draw.c rsvg-cairo-draw.h rsvg-cairo-render.c rsvg-cairo-render.h rsvg-cairo-clip.h rsvg-cairo-clip.c rsvg.c rsvg-gobject.c rsvg-file-util.c rsvg-xml.c rsvg-xml.h rsvg.h rsvg-cairo.h librsvg-features.h librsvg-enum-types.h --output Rsvg-2.0.girRsvg-2.0.gir
In file included from <stdin>:19:0:
/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/rsvg-cairo-render.h:32:19: fatal error: cairo.h: No such file or directory
compilation terminated.
Error while processing the source.
kien librsvg-2.34.2 # emerge -1pv pango gobject-introspection 

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] dev-libs/gobject-introspection-0.10.8  USE="-doc -test" 0 kB
[ebuild   R    ] x11-libs/pango-1.29.4  USE="X introspection -debug -doc -test" 0 kB

Total: 2 packages (2 reinstalls), Size of downloads: 0 kB
kien librsvg-2.34.2 #
Comment 30 Pacho Ramos gentoo-dev 2011-11-24 13:02:29 UTC
I am still running pango-1.28.4
Comment 31 Geoff Madden 2011-11-24 13:05:58 UTC
(In reply to comment #25)
> Verify the if ebuild you are using is applying:
> http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/librsvg/files/librsvg-2.34.2-gir-filename.patch?view=markup
> 
> if not, you need to re-sync again

just re-synced and tried again with all flags active, this's result

/bin/sh ./libtool --silent --tag=CC   --mode=compile i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I.  -I. -I. -DG_LOG_DOMAIN=\"librsvg\" -DLIBRSVG_DATADIR="\"/usr/share\""   -pthread -D_REENTRANT -DQT_SHARED -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng15 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/directfb -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore   -I/usr/include/libcroco-0.6 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2   -DHAVE_LIBCROCO=1   -O2 -march=athlon-xp -ggdb -pipe -c -o librsvg_2_la-librsvg-enum-types.lo `test -f 'librsvg-enum-types.c' || echo './'`librsvg-enum-types.c
  CCLD   librsvg-2.la
  CCLD   rsvg-convert
  CCLD   rsvg-view
  GISCAN Rsvg-2.0.gir
In file included from <stdin>:19:0:
/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2/rsvg-cairo-render.h:32:19: fatal error: cairo.h: No such file or directory
compilation terminated.
Error while processing the source.
make[2]: *** [Rsvg-2.0.gir] Error 1
make[2]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/gnome-base/librsvg-2.34.2/work/librsvg-2.34.2'
make: *** [all] Error 2
 * ERROR: gnome-base/librsvg-2.34.2 failed (compile phase):
 *   emake failed
Comment 32 Geoff Madden 2011-11-24 13:12:55 UTC
So it would appear that the cairo*.h files are not being picked up still.
Geoff
Comment 33 Mads 2011-11-24 15:04:10 UTC
Hm, I just reemerged pango, and then gobject-introspection, and now librsvg-2.34.2 compiles just fine...
Comment 34 giovanni.bobbio 2011-11-24 15:22:03 UTC
(In reply to comment #33)
> Hm, I just reemerged pango, and then gobject-introspection, and now
> librsvg-2.34.2 compiles just fine...

Indeed.
Comment 35 Pacho Ramos gentoo-dev 2011-11-24 16:22:34 UTC
For other affected people please try to only reemerge gobject-introspection, maybe it was the culprit
Comment 36 Rafał Mużyło 2011-11-24 19:03:42 UTC
(In reply to comment #35)
> For other affected people please try to only reemerge gobject-introspection,
> maybe it was the culprit

Chances are it's not so much reemerge, as a pending upgrade (to 1.30.0).
Comment 37 genfool 2011-11-24 19:24:07 UTC
yes that worked here. I re emerged gobject-introspectio and librsvg installed from a -uavND with no problems.

dev-libs/gobject-introspection
      Latest version available: 0.10.8
      Latest version installed: 0.10.8

Good job!
Comment 38 Mao PU 2011-11-25 08:19:19 UTC
(In reply to comment #35)
> For other affected people please try to only reemerge gobject-introspection,
> maybe it was the culprit

librsvg compiles after the reemerge of gobject-introspection. 

Just to let you know: The problem and solution happened on a freshly installed system after an "emptytree" rebuild of @world. The solution worked without a resync of the portage tree.
Comment 39 Pacho Ramos gentoo-dev 2011-11-26 17:16:49 UTC
Did you re-emerge gobject-introspection after glib update like glib ebuild suggests?
Comment 40 Markus Ullmann (RETIRED) gentoo-dev 2011-11-27 19:49:11 UTC
Well I tried to build did it on a fresh install and problem is visible, so if it requires a rebuild we should find a way to forcefully trigger that by factoring out offending bits
Comment 41 Mao PU 2011-11-28 05:34:41 UTC
(In reply to comment #39)
> Did you re-emerge gobject-introspection after glib update like glib ebuild
> suggests?

To answer that question: Just before I experienced the error, I did an --emptytree rebuild of @world. Doing that now would emerge gobject-introspection after glib, but checking the logs I see, that during the previous rebuild glib emerged after gobject-introspection. I must have missed the warning...
Comment 42 Christoph Mende (RETIRED) gentoo-dev 2011-12-18 13:14:45 UTC
To summarize this:
update glib -> emerge librsvg -> failure
update glib -> re-emerge gobject-introspection -> emerge librsvg -> success
This is exactly what I did here, no gobject-introspection update involved, just a simple re-emerge. Considering that the glib ebuild warns about this, I'd say this bug is invalid (i.e. user error).
Comment 43 Pacho Ramos gentoo-dev 2011-12-18 14:40:42 UTC
(In reply to comment #42)
> To summarize this:
> update glib -> emerge librsvg -> failure
> update glib -> re-emerge gobject-introspection -> emerge librsvg -> success
> This is exactly what I did here, no gobject-introspection update involved, just
> a simple re-emerge. Considering that the glib ebuild warns about this, I'd say
> this bug is invalid (i.e. user error).

I would have closed this one because of that, but comment #40 made me think he suffered the problem even without a glib update... or maybe there was a glib update involved in that fresh installation just after syncing the tree :-/
Comment 44 Rafał Mużyło 2011-12-23 02:35:55 UTC
Well, recently I've had a major system failure (still unsure if it was the controller or the disk itself) and needed to do a full reinstall.

I've triggered this bug.

Just before I've reemerged gobject-introspection, I've looked at the content of cairo-1.0.gir:
shared-library field of namespace tag was "".
After reemerging, it became "libcairo-gobject.so.2".
Perhaps there were other changes, but you get the idea.
Comment 45 Pacho Ramos gentoo-dev 2011-12-23 11:17:38 UTC
Maybe DEPENDing on x11-libs/cairo from gobject-introspection is needed then? (not only with USE "test")
Comment 46 Rafał Mużyło 2011-12-23 16:23:48 UTC
(In reply to comment #45)
> Maybe DEPENDing on x11-libs/cairo from gobject-introspection is needed then?
> (not only with USE "test")

Well, the catch lies at very least in cairo[qt] - do you the circular dep ?
Comment 47 Pacho Ramos gentoo-dev 2011-12-24 15:12:52 UTC
(In reply to comment #46)
> (In reply to comment #45)
> > Maybe DEPENDing on x11-libs/cairo from gobject-introspection is needed then?
> > (not only with USE "test")
> 
> Well, the catch lies at very least in cairo[qt] - do you the circular dep ?

Sorry? Do you mean it would add a circular dep? Looks like cairo doesn't depend on gobject-introspection at all :-/
Comment 48 Rafał Mużyło 2011-12-26 16:11:07 UTC
Who said I was talking about a *direct* dependency ?

cairo[qt4] means x11-libs/qt-gui,x11-libs/qt-gui[gtkstyle] means gtk:2 and that means cairo. What's more, while not that useful for that version, gtk:2[introspection] means gobject-introspection. Quite a mess, ain't it ?
Comment 49 Pacho Ramos gentoo-dev 2011-12-27 11:51:22 UTC
If I don't misremember, that circular deps problems with qt-gui[gtkstyle] are old, and that "gtkstyle" USE flag is being used to hide circular deps problem that would appear if it was renamed to "gtk" for qt-gui :S
Comment 50 Rafał Mużyło 2011-12-30 13:48:38 UTC
(In reply to comment #49)
> If I don't misremember, that circular deps problems with qt-gui[gtkstyle] are
> old, and that "gtkstyle" USE flag is being used to hide circular deps problem
> that would appear if it was renamed to "gtk" for qt-gui :S

My point was such solution would make the existing awful situation more awful.
Well, anyway, it's good that it's only a problem with initial install.
Comment 51 Pacho Ramos gentoo-dev 2011-12-30 14:37:58 UTC
But, since seems clear that gobject-introspection really needs cairo, I think we will need to depend on it
Comment 52 Alexandre Rostovtsev (RETIRED) gentoo-dev 2011-12-31 05:16:31 UTC
Cairo is a minefield of circular dependencies. Making gobject-introspection depend on it would result in gobject-introspection → cairo[X,drm] → udev[introspection] → gobject-introspection :/

I think the solution should be to split a "gobject-introspection-cairo" package out of gobject-introspection...
Comment 53 Juergen Rose 2011-12-31 10:18:20 UTC
I hit the same issue setting up a new gentoo box. Reinstalling gobject-introspection solved it for me too.
Comment 54 Duncan Exon Smith 2011-12-31 20:49:08 UTC
(In reply to comment #53)
> I hit the same issue setting up a new gentoo box. Reinstalling
> gobject-introspection solved it for me too.
++

Suggestion from comment #52 sounds promising to me.
Comment 55 thanasis 2012-01-03 21:12:30 UTC
(In reply to comment #53)
> I hit the same issue setting up a new gentoo box. Reinstalling
> gobject-introspection solved it for me too.

for me too.
Comment 56 Vu Tran Kien 2012-01-05 15:51:26 UTC
same problem here with an initial installation of gnome on amd64, reemerge gobject-introspection solves the problem
Comment 57 Pacho Ramos gentoo-dev 2012-01-05 16:23:18 UTC
(In reply to comment #44)
> Well, recently I've had a major system failure (still unsure if it was the
> controller or the disk itself) and needed to do a full reinstall.
> 
> I've triggered this bug.
> 
> Just before I've reemerged gobject-introspection, I've looked at the content of
> cairo-1.0.gir:
> shared-library field of namespace tag was "".
> After reemerging, it became "libcairo-gobject.so.2".
> Perhaps there were other changes, but you get the idea.

Maybe manually appending "libcairo-gobject.so.2" to cairo-1.0.gir would allow us to solve this problem simply PDEPENDing on cairo :-/
Comment 58 Pacho Ramos gentoo-dev 2012-01-05 16:26:05 UTC
Looks like someone also suggested to move cairo introspection to cairo:
https://bugs.freedesktop.org/show_bug.cgi?id=38241
Comment 59 Robert Golding 2012-01-07 22:40:04 UTC
Ran into this problem today doing a clean install on a new AMD-64 machine.
Did what was outlined in comment#42;
emerge glib -> emerge gobject-introspection -> emerge librsvg
and the problem went away
Comment 60 Alexandre Rostovtsev (RETIRED) gentoo-dev 2012-01-09 00:03:23 UTC
I tried splitting gobject-introspection-cairo out of the main package, but the resulting patch would probably have required adjustments on every version bump. So forcing cairo-1.0.gir and cairo-1.0.typelib to always be generated as if cairo-gobject was detected even if it is not installed, and adding a PDEPEND on cairo[glib] (as suggested by Pacho in comment #57), seemed to be the most reasonable solution.

Fixed in gobject-introspection-1.30.0-r2.

>  08 Jan 2012; Alexandre Rostovtsev <tetromino@gentoo.org>
>  gobject-introspection-1.30.0-r2.ebuild,
>  -files/gobject-introspection-1.30.0-forced-cairo.patch:
>  Update fix for bug #391213 to not use eautoreconf.
> 
>*gobject-introspection-1.30.0-r2 (08 Jan 2012)
> 
>  08 Jan 2012; Alexandre Rostovtsev <tetromino@gentoo.org>
>  +gobject-introspection-1.30.0-r2.ebuild,
>  +files/gobject-introspection-1.30.0-forced-cairo.patch:
>  Force building cairo-gobject support, and add a PDEPEND on cairo[glib]
>  (PDEPEND instead of RDEPEND to avoid circular dependencies). Fixes bug
>  #391213; thanks to Pacho Ramos, Rafał Mużyło, and the many helpful
>  testers.
Comment 61 Vu Tran Kien 2012-01-12 06:42:28 UTC
since I'm on stable keyword amd64 please fix it in gobject-introspection-0.10.8.ebuild too!
Comment 62 Rafał Mużyło 2012-01-18 15:17:54 UTC
*** Bug 399283 has been marked as a duplicate of this bug. ***
Comment 63 King Dud 2012-01-19 01:37:41 UTC
Confirming that adding 'gnome-base/librsvg -introspection' to package.use resolved my inability to compile librsvg due to the 'missing' cairo.h file.
Comment 64 Rafał Mużyło 2012-01-23 09:23:27 UTC
*** Bug 399805 has been marked as a duplicate of this bug. ***
Comment 65 Leho Kraav (:macmaN @lkraav) 2012-08-28 00:08:20 UTC
Rebuilding gobject-introspection solved it for me