3 страниц V < 1 2 3 >        
> Консольные приложения, Обновление от 07.10.11 + Busybox и пр.
EXL
сообщение 26.9.2016, 17:07


Rock The Microphone
*******

Группа: Администратор
Сообщений: 1 899
Регистрация: 12.5.2007
Из: г. Новосибирск
Пользователь №: 134 652
Модель телефона: XT894 / XT897
Прошивка: Различные


Настроение:
null







fill.sa попросил меня помочь ему собрать стоковый busybox, вот как это делается.

https://sourceforge.net/projects/motozinezn...rc.rpm/download

Первым делом качаем RPM-ку оригинального busybox'а, распаковываем её и архив с исходниками внутри.

Далее переходим в директорию с распакованными исходниками, и обязательно патчим их:

Код
cd busybox-1.01-1.0.2.custom.src/busybox-1.01/
for i in ../*.patch; do patch -Np1 < $i; done
patch -Np0 < ../busybox-1.01-insmod-usage.diff
patch -Np1 < ../busybox-getty.diff


Далее конфигурируем его

Код
cp ../busybox.config .config


Собираем:

Код
. ~/setenv-z6.sh
make CROSS_COMPILER_PREFIX="arm-linux-gnueabi-" CC="arm-linux-gnueabi-gcc"  STRIP=true STRIPTOOL=true DODEBUG=true oldconfig
make CROSS_COMPILER_PREFIX="arm-linux-gnueabi-" CC="arm-linux-gnueabi-gcc"  STRIP=true STRIPTOOL=true DODEBUG=true


И устанавливаем:

Код
mkdir -p _install/bin/
mkdir -p _install/etc/udhcpc/
mkdir -p _install/usr/share/udhcpc/
make PREFIX=`pwd`/_install install
cp ../udhcpc-default.script _install/usr/share/udhcpc/default.script
cp ../udhcpc-sample.bound _install/usr/share/udhcpc/sample.bound
cp ../udhcpc-sample.deconfig _install/usr/share/udhcpc/sample.deconfig


Забираем сборку в каталоге _install текущей директории.

Примечание, для сборки возможно нужна установленная библиотека ncurses

Код
sudo apt-get install libncurses-dev


Если будет ошибка, связанная с rpc/xdr.h, откройте файл motomagx/arm-eabi2/arm-linux-gnueabi/include/rpc/xdr.h и закомментируйте строки 294 и 296 (содержащие quad_t).
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
fill.sa
сообщение 27.9.2016, 12:56


Гуру
******

Группа: Пользователи
Сообщений: 851
Регистрация: 8.2.2011
Из: Беларусь
Пользователь №: 223 758
Модель телефона: z6 V8
Прошивка: Linux SAedition MOD

Рейтинг: 285.5



Цитата(EXL @ 26.9.2016, 18:07) *

fill.sa попросил меня помочь ему собрать стоковый busybox, вот как это делается.



Для удобства все команды засунул в скрипт run.sh . Ложить в распакованый rpm и запустить, тар архив сам распакуется и все собирется ,останется только забрать готовый файл.

Также в архив закинул патчи(кроме одного ненужного) от VE66 , так мы получим Release 1.0.2 .

Стоит упомянуть про файл busybox.config , в нем выбираем какие проги мы хотим запихать в наш busybox. По этой причине один патч от ve66 и неположил - там мооорола решила лишить нас swap и других полезных прог.

Сообщение отредактировал fill.sa - 27.9.2016, 13:50
Прикрепленный файл autobuild_ve66.zip   ( 14.75 килобайт ) Кол-во скачиваний: 23
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 9.1.2018, 22:43


Термоядерный
********

Группа: Пользователи
Сообщений: 3 203
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
Радиоактивные осадки...



Рейтинг: 1091



GNU bash, version 4.4.12(1)-release (armv6l-unknown-none)
2017-10-13 года выпуска
Всё ещо удивляюсь откуда такой огромный размер у баша, если целый busybox на 300+ утилит весит почти в 2 раза меньше...

СКАЧАТЬ:

Сообщение отредактировал VINRARUS - 9.1.2018, 22:46
Прикрепленный файл bash-4.4.12-armv6l.zip   ( 820.37 килобайт ) Кол-во скачиваний: 7
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
fill.sa
сообщение 11.1.2018, 9:14


Гуру
******

Группа: Пользователи
Сообщений: 851
Регистрация: 8.2.2011
Из: Беларусь
Пользователь №: 223 758
Модель телефона: z6 V8
Прошивка: Linux SAedition MOD

Рейтинг: 285.5



VINRARUS,
Ты же вроди как знаком в чем суть бузибокса.
Учитывая что многие утилиты используют одинаковые функции, значит можно убрать повторяющиеся функции и использовать одну и туже. В итоге размер и сокращается.
Таже история и с втроеныеми командами в оболочки, оболочка разрастается за счет этих команда, а в бузибоксе если в оболочке вызвать cd или просто busybox cd, ты вызываеш одну и туже команду, т.е. убрано дублирование одной и тоже функции в оболочке и просто в команде.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 11.1.2018, 21:30


Термоядерный
********

Группа: Пользователи
Сообщений: 3 203
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
Радиоактивные осадки...



Рейтинг: 1091



Цитата(fill.sa @ Сегодня, 11:14)
* а в бузибоксе если в оболочке вызвать cd или просто busybox cd, ты вызываеш одну и туже команду

Глупость, "busybox cd" не работает.
Запуск любой команды через busybox в десятки-сотни раз мадленнее чем встроенная из за тормозной процедуры запуска нового процеса ядром ОС. Именно по этому я просил Икселя написать zInterval.

Цитата(fill.sa @ Сегодня, 11:14)
* Таже история и с втроеныеми командами в оболочки, оболочка разрастается за счет этих команда

Не вижу в баше хотя б 5% функционала busybox.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
fill.sa
сообщение 12.1.2018, 20:16


Гуру
******

Группа: Пользователи
Сообщений: 851
Регистрация: 8.2.2011
Из: Беларусь
Пользователь №: 223 758
Модель телефона: z6 V8
Прошивка: Linux SAedition MOD

Рейтинг: 285.5



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

Сообщение отредактировал fill.sa - 12.1.2018, 20:22
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 12.1.2018, 20:59


Термоядерный
********

Группа: Пользователи
Сообщений: 3 203
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
Радиоактивные осадки...



Рейтинг: 1091



fill.sa, просто те для кого shell нужен лиш как запуск натива почему то не понимают влияние тормозной ОС (да Linux это тормоз) на задержки, а я с этим непосредственно столкнулся. Вот вы и не различаете запуск нового процеса или выполнение внутри оболочки действия аналогичного функционалу.

Шо до баша то вот его внутренние команды аналогичные из busybox, то есть капля в море.
Код
env
printf
pwd
test
false
true
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
fill.sa
сообщение 13.1.2018, 6:29


Гуру
******

Группа: Пользователи
Сообщений: 851
Регистрация: 8.2.2011
Из: Беларусь
Пользователь №: 223 758
Модель телефона: z6 V8
Прошивка: Linux SAedition MOD

Рейтинг: 285.5



Цитата(VINRARUS @ Вчера, 21:59)
* просто те для кого shell нужен лиш как запуск натива

ну shell Это вообще интерпритатор команд.
Цитата(VINRARUS @ Вчера, 21:59)
* не понимают влияние тормозной ОС (да Linux это тормоз) на задержки

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

Цитата(VINRARUS @ Вчера, 21:59)
* Шо до баша то вот его внутренние команды аналогичные из busybox, то есть капля в море.

Да как бы нет, вот список из родного бузибокса и то еще не факт что это все команды.
Список
"."
":"
"["
"alias"
"bg"
"break"
"cd"
"chdir"
"command"
"continue"
"echo"
"eval"
"exec"
"exit"
"export"
"false"
"fg"
"getopts"
"hash"
"help"
"jobs"
"kill"
"let"
"local"
"pidof"
"pwd"
"read"
"readonly"
"return"
"set"
"shift"
"test"
"times"
"trap"
"true"
"type"
"ulimit"
"umask"
"unalias"
"unset"
"wait"
[close]

И судя по мотороловским патчам, планировалось список расширять.

Сообщение отредактировал fill.sa - 13.1.2018, 6:46
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
VINRARUS
сообщение 13.1.2018, 16:07


Термоядерный
********

Группа: Пользователи
Сообщений: 3 203
Регистрация: 12.12.2009
Из: Чорнобиль
Пользователь №: 211 044
Модель телефона: WX160 & L7 & Z6 & ZN5-128
Прошивка: 740 MHz: Z6 and ZN5


Настроение:
Радиоактивные осадки...



Рейтинг: 1091



Цитата(fill.sa @ Сегодня, 8:29)
* Да как бы нет, вот список из родного бузибокса и то еще не факт что это все команды.

Так это внутренние команды ash и sh.
bash их тоже имеет и немного сверху. От самого busybox большынство не запускается как утилита же. А я привел именно те которые выполняются как утилиты (echo забыл ещо):
Код
busybox имя_команды

Но это всё вообще не в тему, так как изначально говорилось о ВСЕХ утилитах busybox, таких как dd, sed, awk, grep, tar, unzip, wc, tr, yes... которыми обьясняется размер busybox.
А вот bash мало того шо почти ничего из этого не имеет так и весит в 2 раза больше.

Добавлено позже (13.1.2018, 18:10):
Я то понял шо busybox true и sh -c "true" ПОЧТИ одинаковый код в busybox используют, если ты не понял шо я понял, а то я не понял произошло ли это. blind.gif

Сообщение отредактировал VINRARUS - 13.1.2018, 16:07
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
fill.sa
сообщение 13.1.2018, 16:12


Гуру
******

Группа: Пользователи
Сообщений: 851
Регистрация: 8.2.2011
Из: Беларусь
Пользователь №: 223 758
Модель телефона: z6 V8
Прошивка: Linux SAedition MOD

Рейтинг: 285.5



Цитата(VINRARUS @ Сегодня, 17:07)
* Но это всё вообще не в тему,

Еще как в тему, я жетебе написал логику бузибокса и за счет чего бузибок уменьшают. И один из примеров

Цитата(fill.sa @ 11.1.2018, 10:14)
* Таже история и с втроеныеми командами в оболочки, оболочка разрастается за счет этих команда, а в бузибоксе если в оболочке вызвать cd или просто busybox cd, ты вызываеш одну и туже команду, т.е. убрано дублирование одной и тоже функции в оболочке и просто в команде.

Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Консольные приложения, Обновление от 07.10.11 + Busybox и пр. · Motorola на Linux · Forum
 

3 страниц V < 1 2 3 >
Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 18.10.2018, 11:22

Форум живёт: