The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Не могу поставить BASH на freeBSD 8.1"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Пользовательские проблемы / FreeBSD)
Изначальное сообщение [ Отслеживать ]

"Не могу поставить BASH на freeBSD 8.1"  +/
Сообщение от sorokinws (ok) on 10-Мрт-11, 00:08 
Добрый вечер. Помогите пожалуйста вот с каким делом:
Нужно поставить bash на freeBSD 8.1.
Выполняю следующие действия:

cd /usr/ports/shells/bash
make -DNOPORTDOCS -DWITH_STATIC_BASH -DNO_DYNAMICROOT -DNO_SHARED -DWITHOUT_HELP CONFIGURE_ARGS+="--bindir=/bin" deinstall install clean

в ответ

===>  Deinstalling for shells/bash
===>   bash-static not installed, skipping
===>  Installing for bash-static-4.1.9
===>   Generating temporary packing list
===>  Checking if shells/bash already installed
( cd ./po/ ; make  -D NOPORTDOCS -D WITH_STATIC_BASH -D NO_DYNAMICROOT -D NO_SHARED -D WITHOUT_HELP DESTDIR= installdirs )
/bin/sh /usr/ports/shells/bash/work/bash-4.1/./support/mkinstalldirs /usr/local/share
if test "bash" = "gettext-tools"; then  /bin/sh /usr/ports/shells/bash/work/bash-4.1/./support/mkinstalldirs /usr/local/share/gettext/po;  else  : ;  fi
install  -s -o root -g wheel -m 555 -m 0755 bash /bin/bash
install  -o root -g wheel -m 555 -m 0555 bashbug /bin/bashbug
( cd ./doc ; make  -D NOPORTDOCS -D WITH_STATIC_BASH -D NO_DYNAMICROOT -D NO_SHARED -D WITHOUT_HELP  man1dir=/usr/local/share/man/man1 man1ext=.1  man3dir=/usr/local/share/man/man3 man3ext=.3  infodir=/usr/local/share/info htmldir= DESTDIR= install )
/bin/sh ../support/mkinstalldirs /usr/local/share/man/man1
/bin/sh ../support/mkinstalldirs /usr/local/share/info
if test -n "" ; then  /bin/sh ../support/mkinstalldirs  ;  fi
install  -o root -g wheel -m 444 ./bash.1 /usr/local/share/man/man1/bash.1
install  -o root -g wheel -m 444 ./bashbug.1 /usr/local/share/man/man1/bashbug.1
if test -f bash.info; then d=.; else d=.; fi;  install  -o root -g wheel -m 444 $d/bash.info /usr/local/share/info/bash.info
if /bin/sh -c 'install-info --version' >/dev/null 2>&1; then  install-info --dir-file=/usr/local/share/info/dir /usr/local/share/info/bash.info;  else true; fi
if test -n "" ; then  install  -o root -g wheel -m 444 ./bash.html  ;  install  -o root -g wheel -m 444 ./bashref.html  ;  fi
( cd ./builtins ; make  -D NOPORTDOCS -D WITH_STATIC_BASH -D NO_DYNAMICROOT -D NO_SHARED -D WITHOUT_HELP DESTDIR= install )
( cd ./po/ ; make  -D NOPORTDOCS -D WITH_STATIC_BASH -D NO_DYNAMICROOT -D NO_SHARED -D WITHOUT_HELP DESTDIR= install )
/bin/sh /usr/ports/shells/bash/work/bash-4.1/./support/mkinstalldirs /usr/local/share
installing [email]en@quot.gmo[/email] as /usr/local/share/locale/en@quot/LC_MESSAGES/bash.mo
installing [email]en@boldquot.gmo[/email] as /usr/local/share/locale/en@boldquot/LC_MESSAGES/bash.mo
installing af.gmo as /usr/local/share/locale/af/LC_MESSAGES/bash.mo
installing bg.gmo as /usr/local/share/locale/bg/LC_MESSAGES/bash.mo
installing ca.gmo as /usr/local/share/locale/ca/LC_MESSAGES/bash.mo
installing cs.gmo as /usr/local/share/locale/cs/LC_MESSAGES/bash.mo
installing de.gmo as /usr/local/share/locale/de/LC_MESSAGES/bash.mo
installing eo.gmo as /usr/local/share/locale/eo/LC_MESSAGES/bash.mo
installing es.gmo as /usr/local/share/locale/es/LC_MESSAGES/bash.mo
installing et.gmo as /usr/local/share/locale/et/LC_MESSAGES/bash.mo
installing fi.gmo as /usr/local/share/locale/fi/LC_MESSAGES/bash.mo
installing fr.gmo as /usr/local/share/locale/fr/LC_MESSAGES/bash.mo
installing ga.gmo as /usr/local/share/locale/ga/LC_MESSAGES/bash.mo
installing hu.gmo as /usr/local/share/locale/hu/LC_MESSAGES/bash.mo
installing id.gmo as /usr/local/share/locale/id/LC_MESSAGES/bash.mo
installing ja.gmo as /usr/local/share/locale/ja/LC_MESSAGES/bash.mo
installing lt.gmo as /usr/local/share/locale/lt/LC_MESSAGES/bash.mo
installing nl.gmo as /usr/local/share/locale/nl/LC_MESSAGES/bash.mo
installing pl.gmo as /usr/local/share/locale/pl/LC_MESSAGES/bash.mo
installing pt_BR.gmo as /usr/local/share/locale/pt_BR/LC_MESSAGES/bash.mo
installing ro.gmo as /usr/local/share/locale/ro/LC_MESSAGES/bash.mo
installing ru.gmo as /usr/local/share/locale/ru/LC_MESSAGES/bash.mo
installing sk.gmo as /usr/local/share/locale/sk/LC_MESSAGES/bash.mo
installing sv.gmo as /usr/local/share/locale/sv/LC_MESSAGES/bash.mo
installing tr.gmo as /usr/local/share/locale/tr/LC_MESSAGES/bash.mo
installing vi.gmo as /usr/local/share/locale/vi/LC_MESSAGES/bash.mo
installing zh_TW.gmo as /usr/local/share/locale/zh_TW/LC_MESSAGES/bash.mo
if test "bash" = "gettext-tools"; then  /bin/sh /usr/ports/shells/bash/work/bash-4.1/./support/mkinstalldirs /usr/local/share/gettext/po;  for file in Makefile.in.in remove-potcdate.sin  quot.sed boldquot.sed [email]en@quot.header[/email] [email]en@boldquot.header[/email] insert-header.sin Rules-quot   Makevars.template; do  install  -o root -g wheel -m 444 ./$file  /usr/local/share/gettext/po/$file;  done;  for file in Makevars; do  rm -f /usr/local/share/gettext/po/$file;  done;  else  : ;  fi
install-info --quiet /usr/local/info/bash.info /usr/local/info/dir
*** Error code 1

Stop in /usr/ports/shells/bash.

Куда копать, чтоб всё получилось?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Не могу поставить BASH на freeBSD 8.1"  +1 +/
Сообщение от DeadLoco (ok) on 10-Мрт-11, 01:38 
> Куда копать, чтоб всё получилось?

Судя по логам, порт обламывается на инсталляции инфо.

> install-info --quiet /usr/local/info/bash.info /usr/local/info/dir
> *** Error code 1

Похоже, что мейк клинит от -DNOPORTDOCS и/или -DWITHOUT_HELP
А какая нужда в такой изощренной установке? В портах есть отдельно баш, отдельно баш-статик. Зачем просто баш собирать с ключами, если рядом готовый неслучайный порт?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Не могу поставить BASH на freeBSD 8.1"  +1 +/
Сообщение от sorokinws email(ok) on 10-Мрт-11, 09:07 

> Похоже, что мейк клинит от -DNOPORTDOCS и/или -DWITHOUT_HELP

Попробовал просто
cd /usr/ports/shells/bash
make deinstall install clean
- точно такая же картина. Кроме нескольких строк лога. Но в конце всё тоже самое.

> А какая нужда в такой изощренной установке? В портах есть отдельно баш,
> отдельно баш-статик. Зачем просто баш собирать с ключами, если рядом готовый
> неслучайный порт?

Наверное от недостатка опыта - я во freeBSD 1й день.
Просто инструкцию по установке нашёл тут: http://www.lissyara.su/articles/freebsd/trivia/bash/
Ну и собственно пробовал сделать.

Попробовал через bash-static. Вроде что-то поставилось. что именно - сейчас буду смотреть.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. "Не могу поставить BASH на freeBSD 8.1"  +/
Сообщение от DeadLoco (ok) on 10-Мрт-11, 11:50 
> Наверное от недостатка опыта - я во freeBSD 1й день.

Ну, тогда не занимайтесь извратами, и ставьте порты штатным образом. Потому что начинать знакомство с фрей с плясок вокруг баша - это, извините...
Опять же, категорически не рекомендуется менять руту шелл на что-либо, отличное от штатного шелла, ибо потом вы нас всех тут замучаете вопросами. Хотите баш - делайте, как учит хендбук:

# cd /usr/ports/shells/bash
# make deinstall clean install clean

> Просто инструкцию по установке нашёл тут:

А почему бы не задавать вопросы там же, автору инструкции?

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

3. "Не могу поставить BASH на freeBSD 8.1"  +/
Сообщение от bugzz (ok) on 10-Мрт-11, 09:51 
>> Куда копать, чтоб всё получилось?

Если сильно прижало
pkg_add -r bash

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "Не могу поставить BASH на freeBSD 8.1"  +1 +/
Сообщение от bugzz (ok) on 10-Мрт-11, 09:52 
>> Куда копать, чтоб всё получилось?

Если сильно прижало
pkg_add -r bash

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

6. "Не могу поставить BASH на freeBSD 8.1"  +2 +/
Сообщение от lavr on 10-Мрт-11, 14:15 
> Добрый вечер. Помогите пожалуйста вот с каким делом:
> Нужно поставить bash на freeBSD 8.1.
> Выполняю следующие действия:
> cd /usr/ports/shells/bash
> make -DNOPORTDOCS -DWITH_STATIC_BASH -DNO_DYNAMICROOT -DNO_SHARED -DWITHOUT_HELP CONFIGURE_ARGS+="--bindir=/bin"
> deinstall install clean
> в ответ

<skipped>

> install-info --quiet /usr/local/info/bash.info /usr/local/info/dir
> *** Error code 1
> Stop in /usr/ports/shells/bash.
> Куда копать, чтоб всё получилось?

уберите CONFIGURE_ARGS+="--bindir=/bin"
после чего, статически собранный bash у вас будет в /usrlocal/bin

далее:

проверяем действительно ли собрался статически:

# ldd /usr/local/bin/bash
ldd: /bin/bash: not a dynamic ELF executable

да, копируем в /bin

# cp /usr/local/bin/bash /bin/bash

(просто скопируйте bash в /bin, остальное удалите, make deinstall или pkg_delete -f bash\* )

# cd /usr/ports/shells/bash
# make deinstall  (удаляем то что ранее установили - зачем оно вам?)
- если другим пользователям нужен bash, так пусть будет динамически собран
# make clean
# make install

далее в /etc/shells добавляем /bin/bash, далее у пользователя toor задаем в качестве
shell'а /bin/bash -> через pw или vipw

# grep toor /etc/passwd
toor:*:0:0:Bourne-again Superuser:/root:/bin/bash
#

задаем пароль для пользователя toor (замена root со всеми привилегиями) и
пользуемся вместо root -> toor, настраиваем среду под себя:

# ls -la /root/.bash*
# ls -la /root/.profile
# ls -la /root/.inputrc

root оставляем девственно чистым на всякий пожарный случай, так будет более верно

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Не могу поставить BASH на freeBSD 8.1"  +/
Сообщение от sorokinws email(ok) on 10-Мрт-11, 14:30 
lavr, спасибо огромное за совет. Именно так и сделал.

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Не могу поставить BASH на freeBSD 8.1"  +/
Сообщение от Игорь Николаев email on 10-Июл-13, 13:17 
>> cd /usr/ports/shells/bash
>> make -DNOPORTDOCS -DWITH_STATIC_BASH -DNO_DYNAMICROOT -DNO_SHARED -DWITHOUT_HELP CONFIGURE_ARGS+="--bindir=/bin"
> уберите CONFIGURE_ARGS+="--bindir=/bin"
> после чего, статически собранный bash у вас будет в /usrlocal/bin
> проверяем действительно ли собрался статически:
> # ldd /usr/local/bin/bash
> ldd: /bin/bash: not a dynamic ELF executable

Ну да конечно. Это видать старый остался. А сейчас - поломано:
# file /usr/local/bin/bash
/usr/local/bin/bash: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), dynamically linked (uses shared libs), for FreeBSD 8.2, stripped
# ldd /usr/local/bin/bash
/usr/local/bin/bash:
    libintl.so.9 => /usr/local/lib/libintl.so.9 (0x281d7000)
    libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x281e0000)
    libc.so.7 => /lib/libc.so.7 (0x282d8000)

При этом даже толстый набор опций вида -DSTATIC -DWITH_STATIC_BASH -DNO_DYNAMICROOT -DNO_SHARED -DNOSHARED WITH_STATIC_BASH=1 не помогает.

Трам-парарам...

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру