1 (2014-07-02 22:43:00 отредактировано BOPOH89)

Добрый день уважаемые форумчане!
Сегодня я впервые устанавливал софт из исходников и решил воспользоваться утилитой checkinstall.

Но столкнулся с проблемой, такое впечатление что программе не хватает прав доступа.

Запускал и так,

sudo checkinstall -R

и так

su
checkinstall -R

При компиляции возникают ошибки такого плана:

/usr/bin/mkdir: невозможно создать каталог «/usr/local/share/xcurf»: Нет такого файла или каталога

Все указывает на то, что программе недостаточно прав для создания каталога.
Вот только почему?

P.S Если использовать сначала make install (когда каталоги уже созданы), то сборка пакета проходит успешно.

2

Заголовок темы

Linux Mageia 6 x64 и проблемы с checkinstall

Машину времени не одолжите? А то у нас так-то последний стабильный релиз Mageia 4, а Mageia 5 еще только на стадии разработки. smile

Что за программа-то? Может пакет с ней собрать проще будет?

BOPOH89 пишет:

При компиляции возникают ошибки такого плана:

    /usr/bin/mkdir: невозможно создать каталог «/usr/local/share/xcurf»: Нет такого файла или каталога

Такая ошибка могла возникнуть, если каталог /usr/local/share не существует.
Т.е. при установки предпринимается попытка создать каталог xcurf внутри /usr/local/share, но т.к. /usr/local/share нету, возникает ошибка. Проблему решает опция -p у mkdir, как правило.

Консоль
[xxblx@localhost ~]$ mkdir ~/polaa/qw
mkdir: невозможно создать каталог «/home/xxblx/polaa/qw»: Нет такого файла или каталога
[xxblx@localhost ~]$ mkdir -p ~/polaa/qw
[xxblx@localhost ~]$ find ~/polaa/qw
/home/xxblx/polaa/qw

Fedora & GNOME

3

xxblx пишет:

Заголовок темы
Linux Mageia 6 x64 и проблемы с checkinstall
Машину времени не одолжите? А то у нас так-то последний стабильный релиз Mageia 4, а Mageia 5 еще только на стадии разработки. smile

Опечатался smile

xxblx пишет:

Что за программа-то? Может пакет с ней собрать проще будет?

Программа - Xneur. Но это не суть важно.
В итоге, я ee успешно установил через "классический"

Консоль
sudo make install

И после того как make install все сделал(создал каталоги и скопировал файлы), checkinstall создал RPM-пакет.
Просто хочется разобраться в чем причина проблемы.

xxblx пишет:

При компиляции возникают ошибки такого плана:
Такая ошибка могла возникнуть, если каталог /usr/local/share не существует.

Каталог /usr/local/share существует.
Кроме того:
1. make - скрипт и так вызывает команду

Консоль
/usr/bin/mkdir -p /usr/local/share/xcurf

2.
Консоль
sudo /usr/bin/mkdir -p /usr/local/share/xcurf

успешно создает каталог.
3. Как я уже говорил,
Консоль
./configure
make
sudo make install

успешно установило программу.

Если я правильно понял, checkinstall запускает на выполнения make install и "следит" за его действиями, после чего, на основе собранной информации создает RPM-пакет.
Но очень похоже на то, что запущенный с привилегиями root-пользователя checkinstall "запускает" make install c правами обычного пользователя.....

4 (2014-07-03 00:12:54 отредактировано BOPOH89)

Попробовал сделать так:

Консоль
[voron@Linux-PS xcurf-0.3]$ sudo checkinstall -R sudo make install

Пакет собрался, только в нем не хватает большинства файлов + в нем оказался файл /varlog/sudo.log sad

5

BOPOH89 пишет:

Программа - Xneur. Но это не суть важно

В нашем репозитории Mageia Russian Community есть xneur и gxneur 0.17. Если есть необходимость, можно просто пересобрать под x86_64. Надо XliN или кого-нибудь еще с 64-бит системой только попросить, ибо у меня 32-бит.

BOPOH89 пишет:

Если я правильно понял, checkinstall запускает на выполнения make install и "следит" за его действиями, после чего, на основе собранной информации создает RPM-пакет.

Именно так. Смысл checkinstall в том, чтобы собирался пакет. Это дает возможность программу собранную из исходных кодов потом удалить через пакетный менеджер.

Если хочется разобраться, то тогда выкладывайте полный лог, если он большой, то под спойлер.

BOPOH89 пишет:

Попробовал сделать так:
Консоль
[voron@Linux-PS xcurf-0.3]$ sudo checkinstall -R sudo make install

а если так

Консоль
make
sudo checkinstall -R make install

?
Второе sudo перед make install там, по-моему, ненужно.

Fedora & GNOME

6

Вопрос не в конкретной программе xneur, как я уже говорил я уже просто собрал ее из исходников и пользуюсь.

Хочется просто понять почему не работает checkinstall, вдруг еще придется из исходников собирать...

а если так

Консоль
make
sudo checkinstall -R make install

Я уже в первом посте писал, что и так пробовал, и так

Консоль
su
checkinstall -R

Если хочется разобраться, то тогда выкладывайте полный лог, если он большой, то под спойлер.

Честно говоря, не хочется еще раз удалять программу и заново ставить.

Я уже писал что в логе видно, что при выполнении команды

Консоль
/usr/bin/mkdir -p /usr/local/share/xcurf

происходит ошибка
Консоль
/usr/bin/mkdir: невозможно создать каталог «/usr/local/share/xcurf»: Нет такого файла или каталога

7

BOPOH89 пишет:

происходит ошибка
/usr/bin/mkdir: невозможно создать каталог «/usr/local/share/xcurf»: Нет такого файла или каталога

В том и странность. Я уже выше приводил и пример, и просто писал, что такая ошибка обычно возникает, когда в несуществующем каталоге создают каталог новый. Но если /usr/local/share существует, то я даже не знаю что это может быть тогда еще.

Fedora & GNOME