Пакет libcairo2-dev
является последней версией графической библиотеки Каира (1.10.2). Можно ли как-нибудь установить версию 1.8.10?
У меня работает 11.10, но, если возможно, будет интересно общее решение.
Если вы хотите протестировать старую версию Cairo, вы можете встроить ее во временный префикс в своем домашнем каталоге.
Прежде всего, убедитесь, что у вас установлены зависимости сборки Cairo. Вы можете сделать это с помощью следующей команды:
sudo apt-get build-dep cairo
Теперь загрузите и распакуйте старую версию Cairo:
wget http://cairographics.org/releases/cairo-1.8.10.tar.gz
tar xzf cairo-1.8.10.tar.gz
cd cairo-1.8.10
Теперь вы хотите встроить Cairo во временный префикс. Я использовал ~/prefix
для этого несколько раз, но вы можете использовать любой каталог.
./configure --prefix=$HOME/prefix
make
make install
Теперь вам нужно, чтобы ваше собственное программное обеспечение использовало эту версию Cairo. Если программное обеспечение использует pkg-config
для определения местоположения своих зависимостей, необходимо только установить следующую переменную среды:
export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig
Если оно не использует pkg-config
, вам может потребоваться настроить CFLAGS
] включить -I$HOME/prefix/include
и LDFLAGS
включить -L$HOME/prefix/lib
.
Наконец, чтобы запустить вашу программу с использованием пользовательской версии Cairo, вам нужно настроить динамический компоновщик так, чтобы он просматривал общие библиотеки во временном префиксе:
export LD_LIBRARY_PATH=$HOME/prefix/lib
Как только это будет установлено, вы можете убедитесь, что ваша программа ссылается на вашу копию Cairo, используя ldd
. Если все выглядит хорошо, все готово.
Очистка
Как только вы закончите с этой временной установкой, очистка довольно проста. Просто сбросьте переменные окружения и удалите префикс временной установки:
unset LD_LIBRARY_PATH
unset PKG_CONFIG_PATH
rm -rf $HOME/prefix
Возможно, вам придется переконфигурировать / перестроить вашу программу после этого, чтобы она снова использовала систему Cairo.