Показать полную графическую версию : установка программ
Пытаюсь установить Midnight Commander.
Пока удалось только распаковать архив.
Провел конфигурацию # sh configure --without-x
А вот make install не работает. Выдает: don't know how to make install. Stop
При установке FreeBSD коллекцию портов не устанавливал. Я так понял, что эта коллекция нужна для установки программ из интернета, а мой комп с FreeBSD к интернету не подключен и не будет. Проги буду устанавливать из архивов, перенося их на флешке.
Ошибка make install связана с отсутствием коллекции портов или с чем то иным? Как устанавливать программы без коллекции портов?
Ошибка make install связана с отсутствием коллекции портов или с чем то иным? »
Она связана с тем, что вы, по видимому, не умеете собирать ПО из исходников. Порты как раз призваны облегчить эту задачу и доступ к интернетам для них необязателен - дистрибутивы с исходными кодами могут размещаться и локально, по умолчанию в /usr/ports/distfiles.
Однако нужно знать, какие зависимости есть у того или иного ПО - система портов знает о них и при отсутствии нужного автоматически выкачивает, но при отсутствии подключения все зависимости необходимо выяснить вам самостоятельно.
Возьмём к примеру тот же mc (http://www.freshports.org/misc/mc/).
Как видите, у него более десятка зависимостей, у каждой из которых могут быть свои зависимости и так далее. Уже страшно? Хотя у системы портов есть фичи, облегчающие выяснение зависимостей:
# make -C /usr/ports/misc/mc pretty-print-build-depends-list
This port requires package(s) "autoconf-2.68 autoconf-wrapper-20101119 automake-1.11.1 automake-wrapper-20101119 gettext-0.18.1.1 glib-2.28.8_1 gmake-3.82 libiconv-1.13.1_1 libslang2-2.2.4 m4-1.4.16,1 pcre-8.13_1 perl-5.12.4_2 pkg-config-0.25_1 png-1.4.8 python27-2.7.2_2" to build.
# make -C /usr/ports/misc/mc pretty-print-run-depends-list
This port requires package(s) "gamin-0.1.10_4 gettext-0.18.1.1 gio-fam-backend-2.28.8 glib-2.28.8_1 libiconv-1.13.1_1 libslang2-2.2.4 pcre-8.13_1 perl-5.12.4_2 pkg-config-0.25_1 png-1.4.8 python27-2.7.2_2" to run.
И вообще, лучше ставить ПО уже собранное в пакетах - и быстрее, и безгеморнее. Однако, про зависимости всё равно помнить придётся. Пакеты можно взять на ftp сервере FreeBSD или его зеркалах из папки packages соответствующего релиза, например для 8.2 i386 брать тут ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.2-release/
Пакты ставятся с помощью команды pkg_add. Пример с тем же mc - скачиваем с указанного фтпшника mc-4.7.5.tbz, а также пакеты, перечисленные pretty-print-run-depends-list, складываем их в одну директорию и говорим pkg_add mc-4.7.5.tbz.
Про зависимости и в этом случае не следует забывать.
Кстати, если есть интернет, то было бы достаточно просто дать команду pkg_add -r mc. Пакет mc и все отсутствующие зависимости скачались и установились бы автоматически.
Словом, без предварительной вдумчивой подготовки без интернета ставить ПО не получится, так что если машинка уезжает в Антарктиду (или где там нету интернета), то лучше всё нужное поставить заранее. :)
Словом, без предварительной вдумчивой подготовки без интернета ставить ПО не получится »
Значит придется проделать вдумчивую предварительную подготовку. А то ведь даже сейчас найти в интернете ответ на вопрос "Как устанавливать ПО без портов?" сложно (я пока не нашел). А скоро и спросить будет некого. Стандартный ответ на всех форумах "Поставь порты и не делай беременную голову ни себе ни другим". Не от того ли, что они сами не знают и никогда не ставили ПО без портов?
У вас сложилось извращённое представление о проблеме. Я ранее не сказал, но разве это не очевидно, что при сборке без портов проблема зависимостей тоже никуда не денется?
А ваша подначка глупа. Она звучит примерно так:
- Расскажите, как бриться ножом?
- Купите станок или электробритву и не морочьте голову себе и другим.
- Ага, вы просто сами никогда не брились ножом!
Помимо упрощения сборки и установки, порты несут ещё и такие важные функции:
- Всё устанавливаемое из портов/пакетов ПО регистрируется в специальной БД системы, что максимально упрощает его обновление и удаление, а также не допускает путаницы - вряд ли вы через год будете помнить, что и куда, и каких версий вы наставили при установке руками, а система ничего не забудет.
- С ПО, требующим этого (серверное ПО в основном) идут готовые стартскрипты. При установке из исходников вам придётся их писать самому, поскольку чаще всего в комплекте идут init.d для линукса.
А тема "как устанавливать ПО из портов без интернета" обсуждалась, не здесь, правда. Кто-то даже написал скрипт, позволяющий выяснить, какие файлы и откуда надо выкачать и куда положить для сборки определённого ПО - тут (http://wiki.bsdportal.ru/doc:ports) в самом низу.
Вот более продвинутый скрипт в последнем посту темы (http://www.bsdportal.ru/viewtopic.php?t=12947).
Hangsman
02-10-2011, 17:16
pkg_add -r mc
Но самый правильный вариант установки ПО из портов
А ваша подначка глупа. Она звучит примерно так:
- Расскажите, как бриться ножом? »
Подначка глупа для тех, кто не может представить себе, что порой в жизни возникает таки необходимость бриться ножом. Так же я могу вам сказать, что очень глупо полагать, будто интернета нет только в Антарктиде. Я живу в военном городке в 14 км от Москвы. И у нас два года назад здесь не было никакого интернета. А у кого-то в городке до сих пор и телефона (городского) нету. Населенных пунктов в России, где нет интернета еще очень много.
А вы живете в каком-то своем ограниченном мире и понятия не имеете, что может быть по другому.
P.S. Желаю вам, чтобы у вас не возникла необходимость бриться ножом. Ведь это будет разрыв шаблона, когнитивный диссонанс.
Да брейтесь хоть газонокосилкой, а также играйте в футбол в ластах и лазайте в помещение через окно, ибо дверь для слабаков, для которых и бритьё ножом глупость и нонсенс. Только не навязывайте свои странные привычки нормальным людям, а тем более не спрашивайте их, как заниматься мазохизмом. Возможно, где-то есть BDSM клуб BSD From Scratch, члены которого находят извращённое удовольствие в сборке всего с нуля, но я про него ничего не знаю.
Я никому ничего не навязываю, в отличие от вас.
Это было бы точно глупо, ибо у вас, в отличие от меня, все в порядке.
Ну так и пользуйтесь бритвой, тьфу, портами. :) Я привёл все необходимые данные для работы с портами оффлайн. Кстати сейчас подсчитал, сколько весят пакаджи - порядка 20 Гб. Вполне реально за день выкачать, записать на 5 DVD болванок и иметь полную коллекцию софта. Так же можно поступить и с дистфайлами, единственно весить они будут сильно больше, но не неподъёмно много. Несколько дней на нормальном канале, внешний хард не самый большой и вуаля - можно ехать в Антарктиду.
Ладно, убедили.
полную коллекцию софта »
Мне не нужна полная коллекция. Мне FreeBSD нужен для узкоспециализированной задачи.
так, господа-граждане-товарищи, брейк :)
Выдает: don't know how to make install. Stop »
это сразу выдается, или до этого идут какие-то строчки? Хорошо бы показать либо ближайшие до этого строчки, либо, если немного, строчки ваших команд-ответов машины.
коллекцию портов, как уже совершенно правильно писали, совершенно необязательно брать on-line и все тянуть сразу из сети. Можно поддерживать в актуальном состоянии. Было время, когда людям отправляли на дисках по почте. и люди эти жили не за 18 км от Москвы, где в машину можно воткнуть мобильник (думается, что нужный вариант в части найдется) а гораздо дальше. Можно ставить что угодно откуда угодно, только вот рискуете получить полный микс библиотек, неуправляемые зависимости и необновляемую систему.
Кстати, mc как раз тянет за собой очень много зависимостей, в том числе такую вещь, как gettext и прочее
Я так понимаю, что коллекция портов, которая на установочном CD мне не нужна? Мне нужно скачать непосредственно те порты, которые мне нужны, а механизм использования этих портов заложен в FreeBSD?
это сразу выдается, или до этого идут какие-то строчки? Хорошо бы показать либо ближайшие до этого строчки, либо, если немного, строчки ваших команд-ответов машины. »
Сразу. И больше ничего.
Я немного разобрался в порядке вызова команды make и понял, что должен присутствовать файл MakeFile. А там было два файла: Makefile.am и Makefile.in
Вызов #make -f Makefile.am install Выдает тот самый don't know how to make install. Stop
А #make -f Makefile.in install
line 16: Need an operator
make: fatal errors encountered -- cannot continue
16 Строка файла Makefile.in это первая исполняемая строка после комментариев, в которой написано @SET_MAKE@
Мио,
коллекция портов, в том числе та, которая на диске - это "скелеты портов". Когда порт начинаю собирать, идет проверка зависимостей и стягивание исходников. Вот эти самые исходники (проверив зависимости, как Вам писали выше) и можно стянуть заранее, привезти на чем-нибудь и положить в каталог, в котором они должны лежать (об этом опять-таки написали)
Если задача узкоспециальная, можно притащить на носители пакеты и поставить все, что требуется из них
Для компиляции нужен Makefile. Судя по всему, исходники, которые Вы стянули собирают его из как раз тех Makefile.*, которые у Вас есть. Но, если Вы запускали ./configure, то это по идее уже должно было произойти.
Можно попробовать autoconf
Но возможно, проблема в том, что исходник криво приготовлен и либо надо искать что-то другое, либо пытаться найти параметры при которых configure отработает нормально
mar, если я вас правильно понял, если нет файла Makefile (без взяких точек и расширений), значит configure прошла не корректно и надо пробовать до тех пор, пока не появится файл Makefile ?
Первую часть поняли правильно (про Makefile).
Вторая часть - может и не получиться, если что-то некорректно отрабатывает, или не работает (в исходниках)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.