LINUX.ORG.RU

Очень странная ошибка. LFS


0

2

Доброго всем дня!

Решил я переставить LFS, но на этот раз с учетом опциональных зависимостей. во время сборки баш завязал на нкурсес, а когда компилил утил-линукс, оказалось, что нкурсес как-то неправильно собран и нужных функций не поставляет. Я, не будь дурак, решил переустановить нкурсес с запущенным башем, и что бы вы думали? командная строка из под чрута одновременно и видит и не видит файлы. Вот пример:

root /bin# ls                                                                  
bash: /bin/ls: No such file or directory

root /bin# ls                                                                  
bash: /bin/ls: No such file or directory
Второй пример получен при помощи таба. сейчас скинул обратно папку tools и вроде как удалось причрутиться, но все равно комп полуслепой.

Во время установки Ncurses-5.9 была одна странность - make && make install сработали превосходно, но строчка

mv -v /lib/lib{panelw,menuw,formw,ncursesw,ncurses++w}.a /usr/lib
никак не могла найти эти библиотеки, и я решил сменить название их на похожее (а то вдруг опечатка) - на lib/lib{paneltw,menutw,formtw,ncursestw,ncurses++tw}.a. Как раз они в той папке и были. Вот после этого вся канитель и началась. Кто подскажет как поправить?

★★

возможно, скрипт динамически меняет текущий каталог, потому и не видит

kto_tama ★★★★★
()

no such file or directory может выбрасывать также приложение, слинкованное с хреновой/несуществующей библиотекой, если его вызов не удался. Пример - попробуй сделать так:

mkdir /1/bin -p
cp /bin/bash /1/bin
chroot /1 /bin/bash

И любуйся на выхоп

chroot: failed to run command ‘/bin/bash’: No such file or directory

Bash, естественно, слинкован динамически, а так как того же glibc в чруте нет - имеем что имеем.

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 2)
Ответ на: комментарий от Pinkbyte

ну а правится это как? из под рабочей системы скопировать рабочую версию ncurses а потом все пересобрать?

aido ★★
() автор топика
Ответ на: комментарий от Pinkbyte

эммм.... Решил посмотреть ls /mnt/lib из под рабочей системы в строящейся, и не увидел ничего. Куда могли деться библиотеки?

aido ★★
() автор топика
Ответ на: комментарий от aido

в идеале - да. Или компилятору опции нужные подсунуть на рабочей системе чтоб заголовочники и всё прочее брал сразу из чрута и собрать прямо так.

Pinkbyte ★★★★★
()

Насколько я помню, ls - это coreutils. А он собирается отнюдь не в первых рядах среди библиотек LFS. Если ты chroot'ишься в недостроенную систему, то у тебя там вообще может ничего не быть, пока не соберёшь всё остальное.

Далее, ошибки в сборке binutils - это стопудово проблемы с ограждением от внешней среды. Либо переменные какие-то левые остались при сборке, либо компилятор берётся не оттуда, откуда надо. И вообще, если это уже чистовая сборка binutils, то лучше бы запускать тесты после сборки, чтобы убедиться, что всё собралось нормально.

Iron_Bug ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.