LINUX.ORG.RU

21
Всего сообщений: 110

Не работают команды вроде bash и ls

Собираю LFS. В какой-то момент в chroot-е перестали работать уже собранные и установленные приложения из системных каталогов. Приложения из временных каталогов, собранные ранее из хост-системы, работают. С PATH всё нормально. Права на выполнение стоят. ls и find из временных каталогов нужные файлы находит, но выполнятся они не собираются.

У меня такое раньше было на 64-битных системах при выполнении 32-битных программ, когда не была установлена 32-битная libc. С libc тут вроде всё в порядке.

Что посоветуете?

 , , , ,

meliafaro ()

DFS

ваш любимый дебъян с нуля

 , ,

eR ()

Linux From Scratch 8.2 expect5.45.4 make error

Помогите пожалуйста. Делал все по книге, все тесты прошли успешно, все пакеты стоят вплоть до tcl. Застрял на expect. все было нормально до этих строк: lfs@kos-HP-Elite-7500-Series-MT:/mnt/lfs/sources/expect5.45.4$ make

/mnt/lfs/tools/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: warning: libutil.so.1, needed by /mnt/lfs/sources/expect5.45.4/libexpect5.45.4.so, not found (try using -rpath or -rpath-link) /mnt/lfs/tools/bin/../lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: warning: libpthread.so.0, needed by /tools/lib/libtcl8.6.so, not found (try using -rpath or -rpath-link) /tools/lib/libtcl8.6.so: undefined reference to `pthread_setspecific@GLIBC_2.2.5' /tools/lib/libtcl8.6.so: undefined reference to `pthread_getspecific@GLIBC_2.2.5' /mnt/lfs/sources/expect5.45.4/libexpect5.45.4.so: undefined reference to `openpty@GLIBC_2.2.5' /tools/lib/libtcl8.6.so: undefined reference to `pthread_key_delete@GLIBC_2.2.5' /tools/lib/libtcl8.6.so: undefined reference to `pthread_key_create@GLIBC_2.2.5' /tools/lib/libtcl8.6.so: undefined reference to `pthread_create@GLIBC_2.2.5' /tools/lib/libtcl8.6.so: undefined reference to `pthread_join@GLIBC_2.2.5' /tools/lib/libtcl8.6.so: undefined reference to `pthread_attr_setstacksize@GLIBC_2.2.5' collect2: error: ld returned 1 exit status Makefile:391: recipe for target 'expect' failed make: *** [expect] Error 1

полный файл: https://drive.google.com/open?id=1trZF0hF_3cf8Y0JalEJtA5_4cKcUL__5

 , , , ,

Konstantin2222 ()

Raspberry Pi 1 всё ещё жив

Когда я в прошлом году добыл себе ещё и Raspberry Pi 3 я и не думал закапывать Raspberry Pi 1. В моих планах было продолжение Pisaahriktux'а для Raspbeery Pi 1, а также создание 1.5OSaahriktux'а для Raspberry Pi 3 (хотя именно до всего этого, к сожалению, в прошлом году основательно так и не добрался).

Однако, в этом году стало очевидно, что образы PiLFS'а для Raspberry Pi 1/2 заморожены с 2016-го года. Конечно, многое можно было бы и самому обновить в старом образе, но ядро и компилятор точно остались бы старыми. Конечно, и такое можно юзать. Однако, я связался с автором PiLFS'а и спросил его про образ для Raspberry Pi 1. И вот что он ответил:

not necessarily end of life but I have to dig out my RPi 1 from a box and set aside 48 hours of my weekend to build a new one :)

Right now I don't have that kind of spare time.

Так что, новому Pisaahriktux'у для Raspberry Pi 1 таки быть.

А вот свежий PiLFS для Raspberry Pi 3 на днях уже появился. Так что, я уже могу подбираться к сборке 1.5OSaahriktux'а для Raspberry Pi 3 на его основе.

 , , ,

saahriktu ()

Clang - не линкует

При попытке компиляции чего либо клангом 6.0.0 вылезает это

clang -v test.c      
clang version 6.0.0 (tags/RELEASE_600/final)
Target: x86_64-fantomos-linux-musl
Thread model: posix
InstalledDir: /bin
Found candidate GCC installation: /bin/../lib/gcc/x86_64-fantomos-linux-musl/7.3.0
Found candidate GCC installation: /bin/../lib64/gcc/x86_64-fantomos-linux-musl/7.3.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-fantomos-linux-musl/7.3.0
Found candidate GCC installation: /usr/lib64/gcc/x86_64-fantomos-linux-musl/7.3.0
 "/usr/bin/clang-6.0" -cc1 -triple x86_64-fantomos-linux-musl -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -discard-value-names -main-file-name test.c -mrelocation-model pic -pic-level 2 -pic-is-pie -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -v -resource-dir /usr/lib/clang/6.0.0 -internal-isystem /usr/local/include -internal-isystem /usr/lib/clang/6.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdebug-compilation-dir /tmp -ferror-limit 19 -fmessage-length 80 -fobjc-runtime=gcc -fdiagnostics-show-option -fcolor-diagnostics -o /tmp/test-0cf31c.o -x c test.c
clang -cc1 version 6.0.0 based upon LLVM 6.0.0 default target x86_64-fantomos-linux-musl
ignoring nonexistent directory "/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/lib/clang/6.0.0/include
 /usr/include
End of search list.
 "/bin/ld" -pie --eh-frame-hdr -m elf_x86_64 -dynamic-linker /lib/ld-musl-x86_64.so.1 -o a.out /usr/bin/../lib64/Scrt1.o /usr/bin/../lib64/crti.o crtbeginS.o -L/usr/bin/../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/bin/../lib -L/lib -L/usr/lib /tmp/test-0cf31c.o /usr/lib/clang/6.0.0/lib/linux/libclang_rt.builtins-x86_64.a -lc /usr/lib/clang/6.0.0/lib/linux/libclang_rt.builtins-x86_64.a crtendS.o /usr/bin/../lib64/crtn.o
/bin/ld: error: cannot open crtbeginS.o: No such file or directory
/bin/ld: error: cannot open crtendS.o: No such file or directory
clang-6.0: error: linker command failed with exit code 1 (use -v to see invocation)

Работает, если положить crtbeginS.o и crtendS.o в текущую папку. Как это починить? Эти файлы лежат в /usr/lib/gcc/x86_64-fantomos-linux-musl/7.3.0, однако сам гцц там не стоит.

UPD. Решено. Надо было все файлы из папки /tools/lib/gcc/x86_64-fantomos-linux-musl/7.3.0 скинуть в /usr/lib/gcc/x86_64-fantomos-linux-musl/7.3.0

 , ,

MikeWortin ()

firefox и gtk

а последние firefox вообще можно собрать с alsa вместо пульсы и без наличия в системе gtk2? кто-нибудь подобными збочинствами наслаждался? или весь этот ваш треп за «gtk2 - жмур» - таки полный треп?

 , , , ,

ananas ()

PiDGiN Linux

Хотел в 2006-2007 году сделать свою LFS-сборку (linux+uclibc+busybox на основе Gentoo- и FreeBSD-патчей, частью собиралось в buildroot). Научился собирать ISO, делал для него deb-файлы. Даже название выбрал, и бегал с ником PiDGiN в Linux-игрушке Eternal Lands. Но через несколько месяцев это слово «забили» под Instant messenger GAIM. А потом я женился.

Вопрос. Как нынче собирают LFS? Какое руководство самое современное и актуальное?

В 2005-2006 году советовался с друзьями из KirovLUG - сейчас почти все эти люди разъехались из Кирова.

 , ,

pacify ()

Будет ли работать собраное ядро на другой машине?

Хочу собрать LFS на внешнем жестком диске, вопрос в чем, будет ли грузиться ядро если я например первым его соберу на процессоре AMD Athlon II X4, а затем уже подключу Ж/Д к другому компьютеру с Intel I5, будет ли все функционировать?

 ,

playX ()

Безопасна ли ваниль?

Возьмём простого хомячка (меня) который вместо далее-далее-далее-[x] создать ярлык на рабочем столе-готово зазубрил три команды ./configure && make && make DESTDIR=/usr/local install, но при этом как у всякого другого хомячка вдаваться в тонкости и ньюансы нет ни времени, ни особого желания, а хочется чтобы система просто работала и была безопасной, и при этом знать буквально каждый пакет в системе, с какими флагами тот собран — безопасность так же означает и полный контроль над системой.

Взглянуть на типичный дистрибутив Arch Linux, где самый простой пакет «linux» поставляется с несколькими патчами, а ещё с каким-то микрокодом intel в виде дополнительного образа подгружающегося при загрузке... надо ли оно всё? Это для безопасности предусмотрено или как? Хочется надеятся, что подобные сущности плодятся не из необходимости, а чтобы впоследствии исправлять ошибки в результате собственных же нагромождений, типа «тут мы захотели сделать так, но из-за этого вон та шняга отвалилась, но мы сделали для неё патч и теперь всё ок» — вот для этого делаются патчи, а не из реальной необходимости.

Хочется надеяться, что если использовать ваниль «как есть», то и проблем с ней не будет. Так ли это?

Вы знаете истории успеха, где LFS, Slackware или CRUX используются в интерпрайзе по причине, что они просты как пять копеек, разобраться в них не составляет труда, а значит исправлять ошибки (в т.ч. ошибки в безопасности) можно самостоятельно, не дожидаясь апстрима.

Или всё это фигня, хочешь безопаности — молись на Debian, Red Hat и всегда будь в курсе новостей, своевременно обновляй систему чтобы она была просто безопасной?

 , ,

Spoofing ()

Как собрать универсальное ядро Linux для любой машины?

Собираю Linux From Scratch и хочу собрать универсальное ядро, с поддержкой всего железа модульно, но при этом не связываясь со всякими initrd. Хочу чтобы на любой машине можно было просто распаковать тарбол с системой, настроить граб и сразу пользоваться.

Можно ли это сделать? И как? В бинарных дистрибутивах эту проблему как-то же решают.

Когда-то на генте пробовал сконфигурировать ядро так

make allmodconfig

чтобы собрать все модулями, и оно не загрузилось.

P.S. Речь идет об архитектуре x86_64

 , , ,

watsoon ()

Сборка GCC 7.2.0

Помогите решить задачу.
Условие: собрать кросс GCC 7.2.0 по методу CLFS не меняя сорцы.

Пункты 5.13 и 5.14 я успешно решил с помощью спекфайла, а в 5.15 естественно gcc не собирается, не находит библиотеки glibc. Пробовал с LDFLAGS="-Wl,-L/tools/lib -L/tools/lib64,-rpath,/cross-tools/lib" при таком варианте вроде как не могут пройти какие-то тесты, по крайне мере не ругается что не может найти crti.o. Есть советы, которые помогут решить данную задачку?

 ,

evanation ()

Porg: установка, удаление, обновление программ

Подскажите по программе Porg. Можно ли обновлять программы с использованием одного и того же имени в porg? Например я установил foo версия 1 под именем «foo». Программа записала файл1, файл2, файл3. Через некоторое время я устанавливаю foo версия 2 под тем же именем «foo» и эта версия обновлет файл1, файл2 и записывает новый файл4, а файл3 ей уже не нужен для этой версии. Можно при таком методе отследить в porg что файл3 уже не нужен? Или каждую версию нужно под своим именем устанавливать?

 , ,

evanation ()

Установка Portage на LFS

В общем, поставил генту, но, к сожалению, не получил желаемого уровня кастомизации. Знаю, что есть еще нижележащие Stages, но немного поглядываю на LFS. Мне интересно, можно ли поставить Portage на LFS, и чтоб всё хорошо было? Там ведь как его поставишь, всё пойдет в русле Gentoo, но зато система начальная будет настроена вручную «под себя». Какие подводные? Сейчас как раз каникулы, будет чем занять себя.

Хочу сказать, что мне не хочется постоянно какой-то низкоуровневой фигней заниматься, а хочется именно настроить систему «под себя» с нуля, чтоб знать какой пакет что делает, а потом поставить Portage и наслаждаться.

 

letni ()

Поверхностное сравнение базовой части LFS'а, Slackware, Debian'а и CentOS'а

Провёл тут сабжевый анализ. Из стандартных базовых LFS'овских пакетов в Slackware не досчитался:

  • check (есть на slackbuilds.org)
  • dejagnu (есть на slackbuilds.org)
  • libpipeline
  • systemd
  • udev-lfs (ожидаемо)
  • XML-Parser

Кроме этого обнаружился ряд особенностей:

  • Вместо inetutils в Slackware присутствуют iputils + traceroute + net-tools;
  • Вместо iana-etc в Slackware присутствуют etc + network-scripts;
  • procps, psmisc и procinfo в Slackware объединены в пакет procps;
  • Вместо tzdata в Slackware glibc-zoneinfo;

Использование связки iputils + traceroute + net-tools также оказалось характерным для CentOS'а, а вот в Debian'е таки inetutils в покрошенном на кучу мелких пакетиков виде.

Собственно, все эти dejagnu и libpipeline'ы с XML-Parser'ами были обнаружены в базовых репозиториях Debian'а и CentOS'а.

Ну, а так, конечно, некоторые особенности остались за кадром этого текста. Например, использование Debian'ом bsdutils'ов.

PS. Слакбилд для libpipeline можно взять у PhantomX'а: https://github.com/PhantomX/slackbuilds/blob/master/libpipeline/libpipeline.S... .

 , , ,

saahriktu ()

LFS по щучьему веленью

Можно ли лёжа на диване с ноутом собрать LFS? Или более спартанское рабочее место более подходяще для концентрации внимания, для такого занятия?

И если да, то будет ли от этого научная польза, усвояемость материала? После работы не хочется напрягаться, а просто полежать на диване и потоптать батоны.

 ,

Infra_HDC ()

Linux from scratch, дерево зависимостей

Вот собрал LFS, и щас собираю BLFS.

Там большое количество пакетов, и если собирать, например, кеды, то приходится долго переходить со страницы на страницу, собирая софт по зависимостям.

Существует ли способ как-то построить и визуализировать дерево зависимостей?

Тогда было бы легче - выбрал например какой-то пакет, и собираешь по очереди все от чего он зависит.

 ,

watsoon ()

Glibc не собирается

Собираю Glibc из ABS и вижу это:

 In file included from <command-line>:0:0:
../misc/syslog.c: In function '__vsyslog_chk':
../misc/syslog.c:121:30: error: inlining failed in call to always_inline 'syslog': function not inlinable
 ldbl_strong_alias (__syslog, syslog)
                              ^
./../include/libc-symbols.h:100:26: note: in definition of macro '_strong_alias'
   extern __typeof (name) aliasname __attribute__ ((alias (#name)));
                          ^~~~~~~~~
../sysdeps/generic/math_ldbl_opt.h:12:44: note: in expansion of macro 'strong_alias'
 #define ldbl_strong_alias(name, aliasname) strong_alias (name, aliasname)
                                            ^~~~~~~~~~~~
../misc/syslog.c:121:1: note: in expansion of macro 'ldbl_strong_alias'
 ldbl_strong_alias (__syslog, syslog)
 ^~~~~~~~~~~~~~~~~
In file included from ../sysdeps/unix/sysv/linux/syslog.c:4:0:
../misc/syslog.c:153:3: note: called from here
   syslog(INTERNALLOG,
   ^~~~~~~~~~~~~~~~~~~
       "syslog: unknown facility/priority: %x", pri);
       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [/home/egor/LEAF/core/glibc/src/glibc-2.24/build/sysd-rules:531: /home/egor/LEAF/core/glibc/src/glibc-2.24/build/misc/syslog.o] Error 1
make[2]: Leaving directory '/home/egor/LEAF/core/glibc/src/glibc-2.24/misc'
make[1]: *** [Makefile:214: misc/subdir_lib] Error 2
make[1]: Leaving directory '/home/egor/LEAF/core/glibc/src/glibc-2.24'
make: *** [Makefile:9: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...

Перемещено jollheef из development

 , ,

xeneloid ()

Куда лучше собирать LFS?

Читая LFS дошел до подготовки раздела. Собственно, там написано только о том, что нужно на хосте создать новый раздел для LFS. У меня 2 жестких диска, один для хранения, другой системный полностью размеченный. Не могу решить как быть: уменьшить раздел на котором Linux, и создать из этого новый раздел или вообще сделать образ qemu, примонтировать его к хосту (если так можно) и на нем уже собирать? Есть ли какая-то общая практика? Первый вариант выглядит страшно ибо опыта у меня немного.

 ,

JamesMoore ()

Релиз Pisaahriktux 4.0 (Naagliteruufaetraceerefocozeneaxtoreial II)

Вышел релиз Pisaahriktux 4.0 (Naagliteruufaetraceerefocozeneaxtoreial II), сборки для Raspberry Pi на основе PiLFS для юзеров ядерной фреймбуферовской консоли без иксов с локалью KOI8-R.

В этой версии: aalib-1.4.0, aria2-1.28.0, arj-3.10.22, asterisk-13.9.1, audiofile-master, aview-1.3.0, bdwgc-gc7_6_0, beetle-supergrafx-libretro-master, biew-610, bitlbee-3.4.2, bvi-1.4.0, catdoc-0.95, cfitsio, Char-KOI8R-1.08, clit18, cmake-3.6.2, curl-7.50.1, Cython-0.24.1, db-6.2.23, DirectFB 1.7.7, djvulibre-3.5.27, ed-1.13, emacs-25.1, enca-1.19, fbgrab-1.3, fbi-2.12, fdupes-1.6.1, fetchmail-6.3.26, flac-1.3.1, flasm, flux 1.4.4, fontconfig-2.12.1, freetype-2.7, fribidi-0.19.7, frobtads-1.2.3, frotz-2.44, gambatte-libretro-master, gdb-7.11.1, Genesis-Plus-GX-master, giflib-5.1.4, git-2.10.2, glib-2.48.2, gnu-ghostscript-9.14.0, gnutls-3.5.3, gophernicus-2.0, guile-ncurses-2.0, ha-master, hdf5-1.8.17, ImageMagick-7.0.3-0, indent-2.2.10, irssi-0.8.20, jansson-2.9, jp2a-1.0.6, jq-1.5, lame-3.99.5, lcms2-2.8, lftp-4.7.3, lha-1.14i-ac20050924p1, libao-1.2.0, libass-0.13.2, libatomic_ops-7.4.4, libcaca-0.99.beta19, libdrm-2.4.70, libexif-0.6.21, libgcrypt-1.7.3, libgpg-error-1.24, libiconv-1.14, libidn-1.33, libjpeg-turbo-1.5.0, libogg-1.3.2, libpciaccess-0.13.4, libpng-1.6.25, libpthread-stubs-0.3, libretro-fceumm-master, libretro-vecx-master, libsigc++-2.99.7, libsigsegv-2.10, libtasn1-4.9, libtheora-1.1.1, libtommath-1.0, libtorrent-0.13.6, libunistring-0.9.6, libusb-1.0.20, libvorbis-1.3.5, libvpx-master, libxml2-2.9.4, libxmp-4.4.0, lighttpd-1.4.41, links-2.13, lunzip-1.8, lynx2.8.9dev.10, lziprecover-1.18, lzlib-1.8, maxima-5.38.1, mc-4.8.18, mpg123-1.23.6, mplayer-2016-09-18, mpv-0.20.0, msmtp-1.6.5, mutt-1.7.1, mypy-0.4.5, nano-2.7.1, nettle-3.2, nmap-7.30, numpy-1.11.2, p7zip_16.02, pdb2txt, plzip-1.5, poppler-0.47.0, poppler-data-0.4.7, prboom-plus-2.5.1.4, procmail-3.22, psftools-1.0.7, rename-1.9, RetroArch, rtorrent-0.9.6, scons-2.5.0, screen-4.4.0, SDL12-kms-dispmanx-master, SDL2-2.0.4, SDL2_image-2.0.1, SDL2_mixer-2.0.1, SDL2_net-2.0.1, SDL2_ttf-2.0.14, SDL_image-1.2.12, SDL_mixer-1.2.12, SDL_net-1.2.8, SDL_ttf-2.0.11, sdparm-1.10, sharutils-4.15.2, snes9x2002-master, sox-14.4.2, speex-1.2rc1, squashfs-utils 4.3, strace-4.13, swftools-2013-04-09-1007, tcsh-6.19.00, tiff-4.0.6, TiMidity++-2.14.0, tree-1.7.0, unarj-2.65, unrar, unrtf-0.21.9, vorbis-tools-1.4.0, wcslib-5.15, xmp-4.1.0, zip30.

Отдельно привожу список компиляторов и интерпретаторов:

  • bwbasic 3.0 (Bywater BASIC Interpreter)
  • GNU Cim 5.1 (Simula compiler that compiles into C)
  • f2c (Fortran to C Translator) version 20100827
  • FOCAL-1.0.1
  • Focal-81 by Dave Conroy
  • Free Pascal Compiler 3.0.0
  • Gforth 0.7.3 (GNU Forth)
  • GNU Cobol 2.0-rc2
  • GNU Guile 2.0.12 (implementation of the Scheme programming language)
  • GNU Smalltalk 3.2.5
  • The Icon Programming Language 9.5.1
  • MARST 2.7 (Algol 60 to C Translator)
  • The Mumps Compiler 17.11 by Kevin C. O'Kane
  • Nim Compiler 0.14.2
  • Erlang/OTP 19.0
  • Python 3.5.2
  • Refal-5 Version PZ Feb 29 2016
  • Regina-REXX 3.9.1
  • Ruby 2.3.1
  • Steel Bank Common Lisp 1.3.11
  • SNOBOL4 2.0 (The Macro Implementation of SNOBOL4 in C (CSNOBOL4B))
  • Vishap Oberon Compiler (oberon-2 compiler)
  • PHP 7.0.12
  • YASM 1.3.0 (Modular Assembler)

Напоминаю, что рекомендуемый объём карты памяти теперь составляет не менее 8 Гб, хотя теоретически оно должно влезать и на 4 Гб (но, фрагментация).

Скачать: http://saahriktu.org/downloads/pisaahriktux_4.0_distro.tar.xz

 , , ,

saahriktu ()

про LFS

потыкался я тут в эту книжку. Забавно, но непонятно:

1. система без пакетного менеджера живет до первого серьезного обновления?

2. для чего пишутся инструкции? Все равно большая часть их тупо копипастится в терминал.

В общем, если вы его используете — то _как_ вы это делаете?

 

demidrol ()