Я пытаюсь скомпилировать приложение (peekabot) из исходного кода при чистой установке 10.10 (это в VirtualBox на OS X, но я не думаю, что это проблема). Когда он выполняет этап связывания, он терпит неудачу из-за отсутствия статической библиотеки:
libtool: link: cannot find the library `/usr/lib/libgdk_pixbuf-2.0.la' or unhandled argument `/usr/lib/libgdk_pixbuf-2.0.la'
У меня установлена libgdk-pixbuf2.0-dev, поэтому я беспокоюсь.
Ссылка на библиотеку, кажется, была добавлена как зависимость libgtkglextmm и 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'
Но указанная статическая библиотека отсутствует в моей системе. Итак, есть ли способ получить эту библиотеку, которую мне не хватает, или есть какой-то другой обходной путь, который я могу использовать?
спасибо, Ник
Вы случайно строите 32-битное приложение на 64-битном? Этот вопрос напоминает мне об этой ошибке , в которой я не уверен на 100%, что мы исправили этот цикл.
Мое исправление для этого состояло в том, чтобы открыть файлы
/usr/lib/libgtkglextmm-x11-1.2.la
/usr/lib/libgdkglextmm-x11-1.2.la
и заменить любые вхождения
/usr/lib/libgdk_pixbuf-2.0.la
на
-lgdk_pixbuf-2.0
Однако, ошибка должна теперь исправлено:
https://bugs.launchpad.net/ubuntu/+source/gtkglextmm/+bug/662572