LINUX.ORG.RU

Установка gtk+ 2.12 из исходников - make проходит, а инсталляция сразу затыкается.


0

0

Здравствуйте!

Не могу установить gtk+ 2.12 из исходников. Configure и make прошли нормально. При попытке установки через checkinstall -D или через make install, на первом же действии получаю ошибки

========================= Installation results ===========================
Making install in po
make[1]: Entering directory `/home/xi/work/ubuntu_compilpro/gtk+-2.12.0/po'
if test -r ".././mkinstalldirs"; then \
          .././mkinstalldirs /usr/local/share; \
        else \
          /bin/sh ../mkinstalldirs /usr/local/share; \
        fi
mkdir -p -- /usr/local/share/locale/af/LC_MESSAGES
/usr/bin/install: установка прав доступа для `/usr/local/share/locale/af/LC_MESSAGES/gtk20.mo': No such file or directory
installing af.gmo as /usr/local/share/locale/af/LC_MESSAGES/gtk20.mo
/usr/bin/install: установка прав доступа для `/usr/local/share/locale/am/LC_MESSAGES/gtk20.mo': No such file or directory

и так со всеми файлами, (не только с локализацией), например

/usr/bin/install -c -m 644 gtktextlayout.h /usr/local/include/gtk-2.0/gtk/gtktextlayout.h
/usr/bin/install: установка прав доступа для `/usr/local/include/gtk-2.0/gtk/gtktextlayout.h': No such file or directory
 /usr/bin/install -c -m 644 gtkfilesystem.h /usr/local/include/gtk-2.0/gtk/gtkfilesystem.h
/usr/bin/install: установка прав доступа для `/usr/local/include/gtk-2.0/gtk/gtkfilesystem.h': No such file or directory

Пытка гуглом ничего не дала. Что делать, как установить?


> mkdir -p -- /usr/local/share/locale/af/LC_MESSAGES

Создали директорию

> /usr/bin/install: установка прав доступа для `/usr/local/share/locale/af/LC_MESSAGES/gtk20.mo': No such file or directory


Устанавливаем права на файл /usr/local/share/locale/af/LC_MESSAGES/gtk20.mo.


А где само копирование файла в эту директорию?

xintrea
() автор топика
Ответ на: комментарий от xintrea

Ну а по дереву фс-то такие директории\файлы реально есть? Вобщем-то ошибка недвусмысленно намекает на проблемы где-то в этой области.

Anoxemian ★★★★★
()
Ответ на: комментарий от Anoxemian

Директории есть, а файлов типа gtk20.mo - нет.

Я так понимаю, что их туда инсталлятор и должен вначале положить, прежде чем что-то с ними делать. А тут такое впечатление, что самого копирования не происходит.

Владелец директорий/поддиректорий - рут. Права на директории разрешают руту делать все что хош, перепроверил, скопировал/удалил вручную пару файлов.

Блин, какято загадка природы.

xintrea
() автор топика

есть пара вопросов:

1. какой дистрибутив?

2. почему именно 2.12.0?

у меня сейчас самосборный 2.16.5, до этого был 2.12.9, тоже самосбор. но проблем при сборке/установке не было.

arsi ★★★★★
()

>/usr/local/share/locale/af...

Африканское проклятие Вуду? Вспомни, не гневил ли ты в последнее время богов.

ttnl ★★★★★
()
Ответ на: комментарий от arsi

> 1. какой дистрибутив?

Ubuntu 7.04

> 2. почему именно 2.12.0?


Потому что именно в gtk+ 2.12 появилась функция gtk_widget_set_tooltip_text() которая нужна для сборки parcellite 0.9.1, а более старшие версии gtk+ требуют pango и cairo на пару подверсий старше, чем у меня в системе. А prcellite нужна потому, что офицальная версия xclip до сих пор не работает с кириллицей. А форк xclip от компании AltLinux поддерживает кириллицу походу только при уникодовой локали. А все это нужно только для того, чтоб в Midnight Commander наконец-то нормально заработало копирование в DE-шный буфер обмена.

Мда, походу checkinstall с какого-то перепугу разломался. Сначала пытался системные файлы типа ld подменять, теперь файлы копировать не может. Хорошо что после перезагрузки make install сработало, и на том спасибо. Хотя после каждой установки любого пакета ldconfig обязательно делаю. Ладно checkinstall, но почему make install до перезагрузки глючил, понять не могу.

xintrea
() автор топика
Ответ на: комментарий от xintrea

о_О как всё сложно…

честно говоря, не знаю точного принципа работы checkinstall'а, но для сборки пакета гтк2 (как и большинства других) достаточно сделать «make install DESTDIR=/tmp/gtk2-root» или куда удобнее, после чего собрать deb-пакет, если верить интернетам, примерно так: «dpkg -b /tmp/gtk2-root packagename.deb». makepkg слаквари мне более знаком, а вот deb-ы раньше не собирал (потому и дистрибутив спрашивал).

arsi ★★★★★
()
Ответ на: комментарий от arsi

checkinstall так и делает.

make install DESTDIR=`pwd`/B
dpkg-deb -b B package.deb

alex_custov ★★★★★
()
Ответ на: комментарий от xintrea

>Потому что именно в gtk+ 2.12 появилась функция gtk_widget_set_tooltip_text() которая нужна для сборки parcellite 0.9.1, а более старшие версии gtk+ требуют pango и cairo на пару подверсий старше, чем у меня в системе. А prcellite нужна потому, что офицальная версия xclip до сих пор не работает с кириллицей. А форк xclip от компании AltLinux поддерживает кириллицу походу только при уникодовой локали. А все это нужно только для того, чтоб в Midnight Commander наконец-то нормально заработало копирование в DE-шный буфер обмена.

Какая стройная у вас система костылей и подпорок с mc на самой вершине, аж дух захватывает %)

d_a ★★★★★
()
Ответ на: комментарий от xintrea

>>Потому что именно в gtk+ 2.12 появилась функция gtk_widget_set_tooltip_text() которая нужна для сборки parcellite 0.9.1, а более старшие версии gtk+ требуют pango и cairo на пару подверсий старше, чем у меня в системе. А prcellite нужна потому, что офицальная версия xclip до сих пор не работает с кириллицей. А форк xclip от компании AltLinux поддерживает кириллицу походу только при уникодовой локали. А все это нужно только для того, чтоб в Midnight Commander наконец-то нормально заработало копирование в DE-шный буфер обмена.

Ну тогда попробуй скопировать команду sudo make install и вставь и запусти ее в МС ;-\

gkrellm
()
Ответ на: комментарий от arsi

ну это типа была идея петроснуть и замкнуть в кольцо цепочку причинности, описанную ТС. Тонкий математический юмор. Не обращай внимания ;)

gkrellm
()
Ответ на: комментарий от gkrellm

извени за глупый вопрос от куда качал сурсы

enep ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.