Как компилить программы используя ./configure --prefix=
Гость 8 марта, 2006 - 20:31
Как компилить программы используя ./configure --prefix=... Что надо прописать в emerge
»
- Для комментирования войдите или зарегистрируйтесь
А никак, вернее
А никак, вернее никак при помощи emerge, можно просто при помощи ebuild сделать все этапы установки, запустив ./configure, самому. Тут надеюсь ребята объяснят поподробнее, т.к. я этим не занимался.
Кстати, было бы нелохо предложить разработчикам Gentoo добавить возможность управлять флагами ./configure. Например если в файл /etc/portage/packages.configres добавить строку вида:
app-misc/mc --bla...
то emerge, на соответствующем шаге, запустила бы ./configure уже с такими флагами:
./configure [флаги emerge] --bla...
Может есть смысл это обсудить?
На мой взгляд,
На мой взгляд, изменять префиксы установки - не самая лучшая идея. Можно довольно элементарно запутаться самому, и других запутать ;). Всегда лучше скурпулёзно придерживаться той стратегии, какая используется в системе по умолчанию..
Ну, для тех, кто
Ну, для тех, кто знает, что делает, это может пригодиться. Разве, что проблемы могут возникнуть с опцией --prefix=, но и тут, ИМХО, пожно найти выход.
Re: На мой взгляд,
Что с вами люди?? Параметры --prefix=bla Просто необъходимы! А как быть сис админам??? Надо компилировать например ftp сервер с поддержкой mysql и т.д.??? В большинстве случаев нужно использовать именно --prefix. Компиляция без --prefix это как рыба без воды :)
ну имхо
ну имхо ftp-сервер с поддержкой мускуля можно и юзами собрать 8-)
_________________
Gentoo x86_64 2.6.13-r3 на Athlon 64 3000+
Re: На мой взгляд,
Не совсем понял, как --prefix относится к поддержке mysql? Для поддержки mysql вроде достаточно нужный USE-флаг включить (это всё-таки Gentoo или где?)
PREFIX="path" emerge <app_name>
PREFIX="path" emerge
А если не
А если не префикс, а другие параметры для ./configure?
Я отправлял баг
Я отправлял баг в багзилу, мне предложили, пока в портежи не попадет исправленная версия, использовать перемнную EXTRA_ECONF, ее содержимое добавляется к опциям configure. А вообще в портежах полно перемнных, о существовании которых я узнаю, натыкаясь на способы обхода каких-то багов.
[code]
gus alexg # EXTRA_ECONF="ssss" emerge nano
...
./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --bindir=/bin --enable-color --enable-multibuffer --enable-nanorc --disable-wrapping-as-root --enable-spell --disable-justify --disable-debug --enable-nls --disable-utf8 --disable-tiny --without-slang --libdir=/usr/lib64 --build=x86_64-pc-linux-gnu ssss
...
[code]
Что никто не
Что никто не знает как компилировать программы в Gentoo используя параметры после ./configure? Не верю!
Как минимум 2
Как минимум 2 варианта.
Первый это
man ebuild.
Это такой сккккрипт который система портежей юзает для инсталла. Позволяет разбить процесс установки на стадии.
Второй проще. Почитай ебилд проги которую ставишь. Найди там строку .configure. Ну и редактором ее, редактором. Текст однако проще нежели эрпээм. Дальше опять ebuild с командой digest. А затем уже емергееее.
ЗЫ
ИМХО именно из за наличия текстового редактора разработчики портажа не добавляют столь нужные фичи, дабы не усложнять систему всякими там файлами и переменными.
Можно
Можно подробней про 2-й вариант, что там надо "опять ebuild"? Как это всё работает?
1) ebuild это такая
1) ebuild это такая утилитка из portage, которую емерге использует для выполнения конкретных действий. Ее можно использовать для установки пакета по стадиям (распаковка, конфигурация,сборка,установка), для восстановления контрольных сумм (digest) и прочей рутины. Поскольку это все часть портажа все что делаешь этой утилитой ложится в систему точно так же как если бы юзал еmerge (ессно порядок вызовов должен соблюдаться)
2) *.ebuild это такой тестовый скриптик, в котором инструкции по закачке, конфигурации сборе и установке пакета. Вмешаться в конфигурацию можно руками
--with-suexec-bin=/usr/sbin/suexec2 \
--with-suexec-userdir=${USERDIR} \
--with-suexec-caller=apache \
--with-suexec-docroot=/var/www \
Это кусок ебилда от апача, надеюсь остальное ясно
Одна незадача, файлы с контрольными суммами ессно слетают (см. структуру каталогов портежа). И emerge ругается почем зря. Потому после правки ебилда руками
ebuild правленный_ебилд digest
Это исправляет контрольные суммы пакета.
Подробней
man ebuild
Если советуете
Если советуете править ебилды, то сразу читаем дружно про оверлеи :) и никаких проблем :)