Tuesday, January 11, 2011

What can I do about missing libgdk_pixbuf-2.0.la?

Hey,

I'm trying to compile an application (peekabot) from source on a clean install of 10.10 (this is under VirtualBox on OS X, but I don't think that this is a problem). When it performs a linking step it fails because of a missing static library:

libtool: link: cannot find the library `/usr/lib/libgdk_pixbuf-2.0.la' or unhandled argument `/usr/lib/libgdk_pixbuf-2.0.la'

I have libgdk-pixbuf2.0-dev installed, hence the worry.

The reference to the library appears to have been added as a dependency of libgtkglextmm and libgdkglextmm:

grep "libgdk_pixbuf-2.0.la" /usr/lib/*.la

/usr/lib/libgdkglextmm-x11-1.2.la:dependency_libs=' /usr/lib/libgdkglext-x11-1.0.la /usr/lib/libgdk-x11-2.0.la /usr/lib/libgdk_pixbuf-2.0.la /usr/lib/libpangocairo-1.0.la /usr/lib/libgio-2.0.la /usr/lib/libpangox-1.0.la /usr/lib/libpango-1.0.la /usr/lib/libgobject-2.0.la /usr/lib/libgmodule-2.0.la /usr/lib/libglib-2.0.la -lGLU -lXmu -lXt -lSM -lICE /usr/lib/libgdkmm-2.4.la /usr/lib/libpangomm-1.4.la /usr/lib/libglibmm-2.4.la /usr/lib/libcairomm-1.0.la /usr/lib/libcairo.la -lfreetype -lz -lfontconfig -lpng12 -lxcb-render-util -lXrender -lX11 -lpixman-1 /usr/lib/libsigc-2.0.la'

/usr/lib/libgtkglextmm-x11-1.2.la:dependency_libs=' /usr/lib/libgdkglextmm-x11-1.2.la /usr/lib/libgtkglext-x11-1.0.la /usr/lib/libgdkglext-x11-1.0.la /usr/lib/libgtk-x11-2.0.la /usr/lib/libatk-1.0.la /usr/lib/libpangoft2-1.0.la /usr/lib/libfreetype.la /usr/lib/libgdk-x11-2.0.la /usr/lib/libgdk_pixbuf-2.0.la /usr/lib/libpangocairo-1.0.la /usr/lib/libgio-2.0.la /usr/lib/libpangox-1.0.la /usr/lib/libpango-1.0.la /usr/lib/libgobject-2.0.la /usr/lib/libgmodule-2.0.la /usr/lib/libglib-2.0.la -lGLU -lXmu -lXt -lSM -lICE /usr/lib/libgtkmm-2.4.la /usr/lib/libgiomm-2.4.la /usr/lib/libgdkmm-2.4.la /usr/lib/libatkmm-1.6.la /usr/lib/libpangomm-1.4.la /usr/lib/libcairomm-1.0.la /usr/lib/libcairo.la -lfreetype -lpng12 -lxcb-render-util -lXrender -lX11 -lpixman-1 /usr/lib/libglibmm-2.4.la /usr/lib/libsigc-2.0.la -lz -lfontconfig'

But the referenced static library is missing from my system. So, is there a way to get this library that I'm missing, or is there some other workaround I can use?

thanks, Nick

  • You probably need libgdk-pixbuf2.0-dev

    When I am missing a library I take whatever it's complaining about and do an apt-cache search on it. For example in this is what I did in order to find the library:

     jorge@lowgirl:~$ apt-cache search libgdk pixbuf
     libgdk-pixbuf2.0-0 - GDK Pixbuf library
     libgdk-pixbuf2.0-dev - GDK Pixbuf library (development files)
     libgdk-pixbuf2.0-doc - GDK Pixbuf library (documentation)
     libg3d-plugin-gdkpixbuf - plugin for the LibG3D library
     libgdk-pixbuf2-ruby - Gdk-Pixbuf 2 bindings for the Ruby language
     libgdk-pixbuf2-ruby1.8 - Gdk-Pixbuf 2 bindings for the Ruby language
     libgdk-pixbuf2-ruby1.8-dbg - Gdk-Pixbuf 2 bindings for the Ruby language
     libgdkcutter-pixbuf-dev - Cutter Gdk-pixbuf support (Development files)
     libgdkcutter-pixbuf0 - Cutter Gdk-pixbuf support (Shared library)
    

    Packages ending in -dev are what you need, then you just kind of pick the right one from the names.

    For a machine that I know I will be using to build stuff on I "cheat" by using the apt-get build-dep command to pull in libraries that I will probably need. So for example if I want to build an upstream version of say, nautilus, I do an apt-get build-dep nautilus, this will bring in all the libraries I will need, unless upstream added a new dep than what's in the release this will handle most cases.

    Nick Hawes : Sorry, I should've been more explicit in the question: libgdk-pixbuf2.0-dev is present, but the library is still missing.
    Jorge Castro : Please edit your question and add this information, then I will edit my answer appropriately. Thanks!
    Nick Hawes : Done, sorry, and I should've said thanks in my first comment too, so thanks again! ;)
  • Are you building a 32-bit application on 64-bit by chance? This question reminds me of this bug which I'm not 100% sure we fixed this cycle.

    Nick Hawes : This is a 32-bit install of Ubuntu and I have not set any arch flags for the build. I assume that this means the above isn't the problem, unless something nefarious is going on under the hood.

0 comments:

Post a Comment