Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Broken libcairo.so.2: Reinstall cairo fails
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
suttewal
n00b
n00b


Joined: 10 Jul 2009
Posts: 32

PostPosted: Sat Sep 12, 2009 1:48 pm    Post subject: Broken libcairo.so.2: Reinstall cairo fails Reply with quote

Hi everyone

It appears that I have a broken libcairo.so.2 for some reason.

Code:

# revdep-rebuild -pi
 * Configuring search environment for revdep-rebuild

 * Checking reverse dependencies
 * Packages containing binaries and libraries broken by a package update
 * will be emerged.

 * Collecting system binaries and libraries
 * Generated new 1_files.rr
 * Collecting complete LD_LIBRARY_PATH
 * Generated new 2_ldpath.rr
 * Checking dynamic linking consistency
 *   broken /usr/bin/emacs-22 (requires libcairo.so.2)
 *   broken /usr/bin/gsx (requires libcairo.so.2)
 *   broken /usr/bin/gtk-demo (requires libcairo.so.2)
 *   broken /usr/bin/gtk-query-immodules-2.0 (requires libcairo.so.2)
 *   broken /usr/bin/pango-view (requires libcairo.so.2)
 *   broken /usr/bin/pinentry-gtk-2 (requires libcairo.so.2)
 *   broken /usr/lib/ImageMagick-6.5.2/modules-Q16/coders/svg.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/engines/libpixmap.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/engines/libpixmap.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/engines/libsvg.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-am-et.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-am-et.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-cedilla.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-cedilla.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-cyrillic-translit.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-cyrillic-translit.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-inuktitut.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-inuktitut.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-ipa.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-ipa.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-multipress.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-multipress.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-thai.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-thai.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-ti-er.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-ti-er.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-ti-et.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-ti-et.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-viqr.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-viqr.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-xim.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/immodules/im-xim.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/loaders/svg_loader.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-file.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-file.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-lpr.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-lpr.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/modules/libferret.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/modules/libferret.so (requires libcairo.so.2)
 *   broken /usr/lib/gtk-2.0/modules/libgail.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/gtk-2.0/modules/libgail.so (requires libcairo.so.2)
 *   broken /usr/lib/libgailutil.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/libgailutil.so.18.0.1 (requires libcairo.so.2)
 *   broken /usr/lib/libgdiplus.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/libgdiplus.so.0.0.0 (requires libcairo.so.2)
 *   broken /usr/lib/libgdk-x11-2.0.so.0.1400.7 (requires libcairo.so.2)
 *   broken /usr/lib/libgtk-x11-2.0.so.0.1400.7 (requires libcairo.so.2)
 *   broken /usr/lib/libpangocairo-1.0.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/libpangocairo-1.0.so.0.2400.2 (requires libcairo.so.2)
 *   broken /usr/lib/librsvg-2.la (requires /usr/lib/libcairo.la)
 *   broken /usr/lib/mozilla-thunderbird/TestGtkEmbed (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/components/libaccessibility.so (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/components/libdocshell.so (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/components/libgfx_gtk.so (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/components/libgklayout.so (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/components/libmailcomps.so (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/components/libremoteservice.so (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/components/libsystem-pref.so (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/components/libwidget_gtk2.so (requires libcairo.so.2)
 *   broken /usr/lib/mozilla-thunderbird/elf-dynstr-gc (requires libcairo.so.2)
...
These are the packages that would be merged, in order:

Calculating dependencies   ... done!
[ebuild  N    ] x11-libs/cairo-1.8.6-r1  USE="X doc opengl svg xcb -cleartype -debug -directfb -glitz"
[ebuild   R   ] x11-libs/pango-1.24.2  USE="doc*"
[ebuild   R   ] dev-dotnet/libgdiplus-2.0
[ebuild   R   ] x11-libs/gtk+-2.14.7-r2  USE="doc*"
[ebuild   R   ] gnome-base/librsvg-2.22.3  USE="doc*"
[ebuild   R   ] app-crypt/pinentry-0.7.5
[ebuild   R   ] app-editors/emacs-22.3-r2
[ebuild   R   ] app-text/ghostscript-gpl-8.64-r3  USE="cairo*"
[ebuild   R   ] media-gfx/imagemagick-6.5.2.9  USE="doc*"
[ebuild     U ] mail-client/mozilla-thunderbird-2.0.0.23 [2.0.0.22]
[ebuild   R   ] x11-plugins/enigmail-0.95.7-r5

 * IMPORTANT: 3 news items need reading for repository 'gentoo'.
 * Use eselect news to read news items.

 * Now you can remove -p (or --pretend) from arguments and re-run revdep-rebuild.


As you can see, libcairo.so.2 is required by many packages. I figured out that cairo is broken because it IS NOT INSTALLED on my system anymore!
Code:

# emerge --searchdesc cairo
...
*  x11-libs/cairo
      Latest version available: 1.8.6-r1
      Latest version installes: [Not installed]
      Size of file: 6,461 kB
...
8O

So I thought, I just reinstall cairo, but compiling cairo fails.
Code:

# emerge cairo
...
In file included from cairo-xlib-xrender.h:45,
                 from cairo-xlib-xrender-private.h:43,
                 from cairo-xlib-private.h:41,
                 from cairo-xlib-display.c:38:
/usr/include/X11/extensions/Xrender.h:264: error: expected declaration specifiers or '...' before 'Region'
cairo-xlib-display.c: In function '_cairo_xlib_display_get':
cairo-xlib-display.c:270: error: implicit declaration of function 'XESetCloseDisplay'
cairo-xlib-display.c:270: warning: nested extern declaration of 'XESetCloseDisplay'
make[3]: *** [cairo-xlib-display.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
mv -f .deps/cairo-pdf-operators.Tpo .deps/cairo-pdf-operators.Plo
mv -f .deps/cairo-type1-subset.Tpo .deps/cairo-type1-subset.Plo
make[3]: Leaving directory `/var/tmp/portage/x11-libs/cairo-1.8.6-r1/work/cairo-1.8.6/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/var/tmp/portage/x11-libs/cairo-1.8.6-r1/work/cairo-1.8.6/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/x11-libs/cairo-1.8.6-r1/work/cairo-1.8.6'
make: *** [all] Error 2
 *
 * ERROR: x11-libs/cairo-1.8.6-r1 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 2839:  Called die
 * The specific snippet of code:
 *       emake || die "compile failed"
 *  The die message:
 *   compile failed
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/x11-libs/cairo-1.8.6-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/x11-libs/cairo-1.8.6-r1/temp/environment'.
 *

The same occurs when I try "revdep-rebuild -i".

Just a few days ago, I have successfully installed kdebase-meta:4.3, and therefore xorg-server as well. I think cairo should have been installed as well, since those two packages (and their subpackages) most certainly depend on cairo, don't they? I've never started KDE or X since I installed those, so I can't say whether cairo was installed and would have ever worked correct or not.

I tried to mask cairo, so that I am able to install older version than 1.8.6-r1. No matter whether I choose 1.4.14 or 1.6.4-r1, compiling ended in that error...

The relevent USE-Flags are: +X -cleartype -debug -directfb +doc -glitz +opengl +svg +xcb (according to "equery uses cairo")

Code:

# emerge --info
Portage 2.1.6.13 (default/linux/x86/10.0/desktop, gcc-4.3.2, glibc-2.9_p20081201-r2, 2.6.30-gentoo-r6 i686)
=================================================================
System uname: Linux-2.6.30-gentoo-r6-i686-Intel-R-_Core-TM-2_Duo_CPU_T9550_@_2.66GHz-with-gentoo-1.12.11.1
Timestamp of tree: Sat, 12 Sep 2009 11:45:01 +0000
app-shells/bash:     3.2_p39
dev-java/java-config: 2.1.8-r1
dev-lang/python:     2.6.2-r1
dev-util/cmake:      2.6.4
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j3"
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"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="32bit 7zip R X aac accessibility acpi alias alsa amarok2 amazon apache2 arts aspell audio audiofile auth automount avi battery bcmath bind bittorrent bittorrent-external blender-game bugzilla c++ cairo cdda cdparanoia cdr cdrom cgi cli clock colorpicker community consolekit crypt css ctype curl cvs cvsgraph dbus dhclient dhcpcd divx doc dvb dvbplayer dvd dvdread ebook eigen emacs embedded exchange exif extra extra-algorithms extra-ciphers fat fbdev fbsplash finger firefox firefox3 flash freesound ftp ftpd gd geoip geolocation gif gimp glib gnuplot gpg gphoto2 grub gtk hal highlight history howl html htmlsingle htmltidy http http-forms imagemagick imap ipod irc jadetex java java5 javascript jbig jce jde jfs jpeg jpeg2k kate kcal kdcraw kde kdecards kdm keyboard kontact lame laptop latex latex3 latin1 ldap lua math mathml md5sum mdb mime mixer mjpeg mono mozilla mp3 mp3tunes mp4 mpeg mplayer msn mysql mysqli nat net netbeans networkmanager nfs nocd normalize octave odbc ogg ogg123 oggvorbis opengl openssl opensslcrypt openstreetmap openvpn oxygen pango passwd pcmcia pdf php pidgin pipes plasma png podcast pop pop3d portage posix postgres pulseaudio python3 qt qt3 qt3support qt4 qtdesigner qtscript query-browser quicktime quota quotas rar rdesktop regex regexp reiser4 reiserfs rewrite ruby ruby-bindings rubytests samba sdk server session sftp sha1 shadow shm shmvideo shorten shutdown skins skype slang sms smtp soap sockets sound spell sqlite sqlite3 ssh ssh1 ssl subversion suhosin svg svga svgz swat syslog telnet templates terminal tex thesaurus thinkpad thumbnail thunderbird tidy tiff totem trayicon truetype truetype-fonts uml unicode unzip usb vboxwebsrv vga video video-file videos vim virtualbox vlc vlm vnc vorbis watchdog wav wavpack webkit webpresence wifi wildcards win32codecs winbind winetools winpopup wireshark wma wma-fixed wmp x86 xcb xcomposite xfce xfs xhtml xine xml xmlreader xorg xorgmodule xrender xscreensaver xsl xslt xvid zeroconf zip zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_dbd authn_alias authn_anon      authz_host autoindex dbd deflate dir env ext_filter filter headers include      mime mime_magic rewrite setenvif speling status unique_id userdir vhost_alias" APACHE2_MPMS="prefork" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="radeon"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY


How can I manage to compile & install cairo again?

Thanks in advance.
Walt
Back to top
View user's profile Send private message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5028
Location: Dark side of the mood

PostPosted: Sun Sep 13, 2009 11:04 am    Post subject: Reply with quote

Tried cairo-1.8.8?
_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
Fred Krogh
Veteran
Veteran


Joined: 07 Feb 2005
Posts: 1027
Location: Tujunga, CA

PostPosted: Thu Sep 09, 2010 4:13 am    Post subject: Reply with quote

It looks like cairo-1.8.10 works for me. After breaking lots of stuff with cairo-1.10.0. This is on an AMD64 system.
Back to top
View user's profile Send private message
vivaceious
n00b
n00b


Joined: 08 Sep 2010
Posts: 31
Location: San Francisco, USA

PostPosted: Thu Sep 09, 2010 4:44 am    Post subject: Reply with quote

someone should lock this i think... Mr Fred Krogh responded to a year old inquiry :P
Back to top
View user's profile Send private message
Fred Krogh
Veteran
Veteran


Joined: 07 Feb 2005
Posts: 1027
Location: Tujunga, CA

PostPosted: Thu Sep 09, 2010 7:05 am    Post subject: Reply with quote

Whoops! I hadn't noticed that this was a year old. At least for me cairo-1.10.0 is broken.
Back to top
View user's profile Send private message
Fred Krogh
Veteran
Veteran


Joined: 07 Feb 2005
Posts: 1027
Location: Tujunga, CA

PostPosted: Thu Sep 09, 2010 4:43 pm    Post subject: Reply with quote

It appears that the problems I was having with cairo are fixed in cairo-1.10.0-r1.
Back to top
View user's profile Send private message
Henrik
n00b
n00b


Joined: 16 Aug 2010
Posts: 4

PostPosted: Fri Sep 10, 2010 10:22 am    Post subject: Reply with quote

cairo-1.10.0-r1 is still broken because libcairo.la is still missing in this 1.10 build and bunch of other apps are depending of this file.
I'm running AMD64 as well and i'm back to cairo-1.8.10
Back to top
View user's profile Send private message
SamuliSuominen
Retired Dev
Retired Dev


Joined: 30 Sep 2005
Posts: 2133
Location: Finland

PostPosted: Fri Sep 10, 2010 11:10 am    Post subject: Reply with quote

1. The .la file isn't really required, you can workaround that by:

# emerge lafilefixer
# lafilefixer --justfixit

2. But since it was causing so much unnecessary trouble for users, the maintainers decided to restore the .la file for now in -r3 of the package.
So you'll get it back by simply syncing and upgrading cairo. Note that this is only a short-time fix.
Back to top
View user's profile Send private message
Anon-E-moose
Advocate
Advocate


Joined: 23 May 2008
Posts: 4336
Location: Dallas area

PostPosted: Fri Sep 10, 2010 11:32 am    Post subject: Reply with quote

Henrik wrote:
cairo-1.10.0-r1 is still broken because libcairo.la is still missing in this 1.10 build and bunch of other apps are depending of this file.
I'm running AMD64 as well and i'm back to cairo-1.8.10


It's not broken.
.la files are falling out of favor and many packages are walking away from them.
_________________
Asus m5a99fx, FX 8320 - nouveau, oss4, rx550 for qemu passthrough
Acer laptop E5-575, i3-7100u - i965, alsa
---both---
5.0.13 zen kernel, profile 17.1 (no-pie & modified) amd64-no-multilib
gcc 8.2.0, eudev, openrc, openbox, palemoon
Back to top
View user's profile Send private message
Anon-E-moose
Advocate
Advocate


Joined: 23 May 2008
Posts: 4336
Location: Dallas area

PostPosted: Fri Sep 10, 2010 11:35 am    Post subject: Reply with quote

ssuominen wrote:

2. But since it was causing so much unnecessary trouble for users, the maintainers decided to restore the .la file for now in -r3 of the package.
So you'll get it back by simply syncing and upgrading cairo. Note that this is only a short-time fix.



I went ahead and ran revdep-rebuild and just fixed it.
In chasing down some other problem, before -r1 I went back to the 1.8* versions
and didn't have to recompile again.

Once you walk away from the .la files you don't need to go back
and as you say, having them is simply a short term fix, as they
will go away eventually.
_________________
Asus m5a99fx, FX 8320 - nouveau, oss4, rx550 for qemu passthrough
Acer laptop E5-575, i3-7100u - i965, alsa
---both---
5.0.13 zen kernel, profile 17.1 (no-pie & modified) amd64-no-multilib
gcc 8.2.0, eudev, openrc, openbox, palemoon
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum