From: "Евгений Косенко" <eugine_kosenko@ukr.net> To: community@altlinux.ru Subject: [Comm] Сборка rpm из исходников Date: Sat, 29 Nov 2003 21:14:00 +0200 Message-ID: <200311292114.00998.eugine_kosenko@ukr.net> (raw) Вот, собрался опробовать свои силы в сборке rpm-пакетов из исходников. Как мне и рекомендовали, посмотрел статью http://atmsk.ru/indexe98c.html?option=articles&task=viewarticle&artid=40&Itemid=3 и попробовал сделать так же. Могу сказать, что статья явно не для новичков. Во-первых, в тексте нигде не упомянуто, что "непривилегированный" пользователь должен входить в группу rpm. Во-вторых, каталог /usr/src, куда рекомендуется ставить исходники, доступен только для "привилегированного" пользователя root. Как он может быть доступен другим при установке из коробки -- ума не приложу. А в-третьих, совершенно неясно, из каких каталогов выполнять указанные команды. Впрочем, обо всем по порядку. Итак, $ pwd /home/user $ apt-get source gnome-mlview Чтение списков пакетов... Завершено Построение дерева зависимостей... Завершено Необходимо получить 451kB исходных архивов. Получено: 1 ftp://ftp.linux.kiev.ua i586/classic gnome-mlview 0.6.0-alt1 (srpm) [451kB] Получено 26,4kB за 19s (1324B/s). gnome-mlview ################################################## $ Мнэ... Он, оказывается, не только тянет файл, как сказано в статье, он еще его и ставит! Ладно, $ ls -l /usr/src итого 2 drwxr-xr-x 3 root root 72 Ноя 8 21:37 kernel drwxr-xr-x 14 root root 792 Ноя 8 21:37 linux $ ls -l ... drwxr-xr-x 4 user user 96 Ноя 29 20:10 RPM ... Похоже, что подкаталог RPM ставится в тот же каталог... Ладно, может ему нужно указывать установку явно: $ rm -rf RPM $ rpm -i gnome-mlview-0.6.0-alt1.src.rpm $ ls -l /usr/src итого 2 drwxr-xr-x 3 root root 72 Ноя 8 21:37 kernel drwxr-xr-x 14 root root 792 Ноя 8 21:37 linux $ ls -l ... drwxr-xr-x 4 user user 96 Ноя 29 20:10 RPM ... Весело? Мне не очень. Проверял и от обычного пользователя и от суперпользователя, во всех домашних каталогах и в /usr/src, результат всегда один и тот же -- файлы ставятся в домашний каталог. На этом фоне фраза типа > Теперь необходимо положить исходники программы *.tar.gz и патчи *.patch.gz в > папочку с /usr/src/RPM/SOURCES, файл описания процесса сборки *.spec > положить в папку /usr/src/RPM/SPECS и можно приступать к сборке. Не спешите > хвататься за MC и раскладывать файлы вручную, я всего лишь описал процесс, > чтобы вы знали, где искать концы после этой операции. В реальности все > вышеперечисленное делает команда > $rpm -i ваша_программа.src.rpm выглядит как особо изощренное издевательство. После трехлетней жизни в Линукс у меня выработалось устойчивое мнение, что результаты сборки не должны зависеть от положения рабочего каталога так же, как и от фаз Луны. Неужели каталог /usr/src обладает особой магией? Ладно, идем дальше... Допустим, вопреки рекомендациям, имея особо продвинутые права, выполняем следующее: $ su - ... # mv ~user/RPM /usr/src # chgrp -R rpm /usr/src/RPM # ls -lR /usr/src/RPM /usr/src/RPM: total 1 drwxr-xr-x 2 user rpm 248 Nov 29 21:02 SOURCES drwxr-xr-x 2 user rpm 88 Nov 29 21:02 SPECS /usr/src/RPM/SOURCES: total 464 -rw-r--r-- 1 eugine rpm 22753 Sep 24 01:22 gnome-mlview-0.6.0.ru.po -rw-rw-r-- 1 user rpm 753 Sep 11 22:34 gnome-mlview-16.png -rw-rw-r-- 1 user rpm 2087 Sep 11 22:34 gnome-mlview-32.png -rw-rw-r-- 1 user rpm 4859 Sep 11 22:34 gnome-mlview-48.png -rw-rw-r-- 1 user rpm 432144 Sep 11 09:45 mlview-0.6.0.tar.bz2 /usr/src/RPM/SPECS: total 4 -rw-r--r-- 1 user rpm 2652 Sep 24 01:22 gnome-mlview.spec # cd /usr/src/RPM/SPECS # rpm -ba gnome-mlview.spec gnome-mlview.spec: No such file or directory # exit $ pwd /home/user $ rpm -ba gnome-mlview.spec gnome-mlview.spec: No such file or directory $ cd /usr/src/RPM/SPECS $ rpm -ba gnome-mlview.spec gnome-mlview.spec: No such file or directory $ И так далее в разных позах с одним и тем же результатом. Цитирую статью: > Обратите внимание! в отличии от обычных операций установки через RPM - эта > операция выполняется от пользователя! иначе RPM скажет вам, что сборка > разрешена только непривилегированным пользователям и собирать ничего не > будет. Не знаю, насколько нужно быть "непривилигированным" пользователем, но если приведенные сообщения обозначают, "что сборка разрешена только непривилегированным пользователям", то я испанский летчик. Ладно, это все мелочи и придирки в плохом настроении. Главный вопрос: что я делаю не так? Или я такой счастливый, что для первого знакомства мне попался кривой пакет из Сизифа?
next reply other threads:[~2003-11-29 19:14 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2003-11-29 19:14 Евгений Косенко [this message] 2003-11-30 7:47 ` Немос 2003-11-30 7:57 ` Alexander Bokovoy 2003-11-30 12:11 ` Евгений Косенко 2003-11-30 12:46 ` Sergey Degtyaryov 2003-11-30 18:44 ` Евгений Косенко 2003-11-30 19:57 ` Sergey Degtyaryov 2003-11-30 23:12 ` Евгений Косенко 2003-11-30 12:53 ` Alexander Bokovoy 2003-11-30 8:11 ` [Comm] " Konstantin Lepikhov 2003-11-30 12:11 ` Евгений Косенко 2003-11-30 15:27 ` Konstantin Lepikhov 2003-12-01 16:02 ` Alexey Tourbin 2003-11-30 20:25 ` Michael Shigorin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=200311292114.00998.eugine_kosenko@ukr.net \ --to=eugine_kosenko@ukr.net \ --cc=community@altlinux.ru \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git