DDA-E398
6.10.2011, 12:48
В теме выкладываем консольные приложения скомпиленные под наши моторы и обсуждаем проблемы связанные с компиляцией.Консольные приложения под E2 (EZX):Bash 4.1.0 Нажмите для просмотра прикрепленного файлаp7zip 9.20 Нажмите для просмотра прикрепленного файлаLame 3.98.4 Нажмите для просмотра прикрепленного файлаNtpdate Нажмите для просмотра прикрепленного файлаBusybox 1.19.2 Нажмите для просмотра прикрепленного файлаInit_gprs Нажмите для просмотра прикрепленного файлаShc Нажмите для просмотра прикрепленного файлаНе надо задавать вопросы тита: "А что это?", "Куда сулять-то?", "Как запустить и использовать?", "Я ваще где?".
Курим:
-
http://www.opennet.ru/man.shtml-
http://www.google.ru/Требуется помощь в компиляции FFMpeg, Streamripper и Calc.
DDA-E398
4.11.2011, 15:54
K()t
4.11.2011, 16:24
А что нового в обновлении?
DDA-E398
4.11.2011, 18:28
По моей просьбе EXL скомпилил ещё и Streamripper
Нажмите для просмотра прикрепленного файлаЦитата(K()t @ 4.11.2011, 19:24)
А что нового в обновлении?
Новая версия lame и в p7zip добавил 7za и 7zr
DDA-E398
5.11.2011, 6:56
Обновление от 05.11.11php 5.3.8
Нажмите для просмотра прикрепленного файлаpython 2.7.2
Нажмите для просмотра прикрепленного файлаПытаюсь скомпилить calc... Никак не получается. Может кто-нибудь помочь?
Назначьте меня куратором данной темы. Нужно поправить первый пост.
VINRARUS
20.9.2016, 23:16
Самому скомпилить Busybox не удалось, по этому взял готовый с 4где, вроде работает.
EXL
21.9.2016, 17:52
Цитата(VINRARUS @ Сегодня, 5:16)
Самому скомпилить Busybox не удалось, по этому взял готовый с 4где, вроде работает.
А что не получалось? Сейчас ради интереса попробовал собрать 1.25.0 и 1.24.2, всё нормально собралось.
https://busybox.net/downloads/busybox-1.24.2.tar.bz2https://busybox.net/downloads/busybox-1.25.0.tar.bz2Конфиги и патчи прикрепляю.
Собирать так, 1.24.2:
Код
. ~/setenv-z6.sh
cd busybox-1.24.2/
patch -Np1 < ~/Downloads/busybox-motomagx/motomagx-umount-1.24.2.patch
cp ~/Downloads/busybox-motomagx/motomagx-config-1.24.2 .config
make
make install
1.25.0:
Код
. ~/setenv-z6.sh
cd busybox-1.25.0/
cp ~/Downloads/busybox-motomagx/motomagx-config-1.25.0 .config
make
make install
В
_install, в директории с исходниками busybox будет лежать установленный busybox.
Кроме того, он собран с оптимизацией под процессор платформы, на которой базируется MotoMAGX-телефоны, то есть:
Код
-march=armv6j -mtune=arm1136jf-s -mfpu=vfp -O2 -Os
В теории должен работать немного быстрее.
VINRARUS
22.9.2016, 13:14
Цитата(EXL @ Вчера, 20:52)
А что не получалось?
Да я сконфигурировал на авто.
Цитата(EXL @ Вчера, 20:52)
В теории должен работать немного быстрее.
А на практике наоборот медленнее.
Несколько раз проверил, по этому погрешность особой роли не играет, частота фиксированная.Нажмите для просмотра прикрепленного файлаКод
#bu VINRARUS 2015
KO=7
K1=12345678
K2=91234567
KK=1
echo START...
while [ "$KK" -lt "1000" ]
do
let K2=1+$K1+$KO+$KO*$KO/$KO*$KO*$K1/$KO/$K1*$K1+$KO*$KO/$KO*$KO*$K1/$KO/$K1/$K1+$KO*$KO/$KO*$KO*$K1/$KO/$K1*$K1+$KO*$KO/$KO*$KO*$K1/$KO/$K1/$K1+$KO*$KO/$KO*$KO/$KO/$K1+8
case "$KO" in
1)
KO=6
;;
2)
KO=5
;;
3)
KO=9
;;
4)
KO=7
;;
5)
KO=4
;;
6)
KO=2
;;
7)
KO=3
let KK=$KK+1
;;
8)
KO=1
;;
9)
KO=8
;;
esac
done
[close]
VINRARUS
22.9.2016, 21:10
Цитата(EXL @ Вчера, 20:52)
Попробуй тогда вместо -O2 в конфиге поставить -O3 и пересобрать.
Это агрессивная оптимизация
Даже размер тот самый, да и тест столько же занимает по времени.
Цитата(VINRARUS @ Сегодня, 16:14)
А на практике наоборот медленнее.
Тю блин, там элементов 332 (даже sh нету), а тот шо я скомпилил 350.
А наш старый busybox_full (1.14.3) вообще тормознутый: real 0m 9.26s
EXL
22.9.2016, 22:18
Цитата(VINRARUS @ Сегодня, 3:10)
Тю блин, там элементов 332 (даже sh нету), а тот шо я скомпилил 350.
А наш старый busybox_full (1.14.3) вообще тормознутый: real 0m 9.26s
В качестве бенчмарка попробуй тупо unzip или, наоборот, bzip2 на одном и том же архиве или на одном и том же наборе файлов, лучше несколькими прогонами, так как первый запуск может быть "холодным".
Или ещё можно посчитать тот же sha512sum / md5sum на каком-нибудь большом файле.
-march=armv6j -mtune=arm1136jf-s -mfpu=vfp -O3 -Os это именно на алгоритмику идёт, а не на IO. Хотя это всё в пределах погрешности будет, наверное. Тут в основном для float'ов оптимизации.
EXL
26.9.2016, 17:07
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
Цитата(EXL @ 26.9.2016, 18:07)
fill.sa попросил меня помочь ему собрать стоковый busybox, вот как это делается.
Для удобства все команды засунул в скрипт run.sh . Ложить в распакованый rpm и запустить, тар архив сам распакуется и все собирется ,останется только забрать готовый файл.
Также в архив закинул патчи(кроме одного ненужного) от VE66 , так мы получим Release 1.0.2 .
Стоит упомянуть про файл busybox.config , в нем выбираем какие проги мы хотим запихать в наш busybox. По этой причине один патч от ve66 и неположил - там мооорола решила лишить нас swap и других полезных прог.
VINRARUS
9.1.2018, 22:43
GNU bash, version 4.4.12(1)-release (armv6l-unknown-none)
2017-10-13 года выпуска
Всё ещо удивляюсь откуда такой огромный размер у баша, если целый busybox на 300+ утилит весит почти в 2 раза меньше...
СКАЧАТЬ:
fill.sa
11.1.2018, 9:14
VINRARUS,
Ты же вроди как знаком в чем суть бузибокса.
Учитывая что многие утилиты используют одинаковые функции, значит можно убрать повторяющиеся функции и использовать одну и туже. В итоге размер и сокращается.
Таже история и с втроеныеми командами в оболочки, оболочка разрастается за счет этих команда, а в бузибоксе если в оболочке вызвать cd или просто busybox cd, ты вызываеш одну и туже команду, т.е. убрано дублирование одной и тоже функции в оболочке и просто в команде.
VINRARUS
11.1.2018, 21:30
Цитата(fill.sa @ Сегодня, 11:14)
а в бузибоксе если в оболочке вызвать cd или просто busybox cd, ты вызываеш одну и туже команду
Глупость, "busybox cd" не работает.
Запуск любой команды через busybox в десятки-сотни раз мадленнее чем встроенная из за тормозной процедуры запуска нового процеса ядром ОС.
Именно по этому я просил Икселя написать zInterval.Цитата(fill.sa @ Сегодня, 11:14)
Таже история и с втроеныеми командами в оболочки, оболочка разрастается за счет этих команда
Не вижу в баше хотя б 5% функционала busybox.
fill.sa
12.1.2018, 20:16
VINRARUS,
Я забыл, что у тебя как обычно свой взгляд на мир. Даже не буду пытаться что-то обьяснять, если все знаеш - ищи ответы на свои вопросы сам.
VINRARUS
12.1.2018, 20:59
fill.sa, просто те для кого shell нужен лиш как запуск натива почему то не понимают влияние тормозной ОС (да Linux это тормоз) на задержки, а я с этим непосредственно столкнулся. Вот вы и не различаете запуск нового процеса или выполнение внутри оболочки действия аналогичного функционалу.
Шо до баша то вот его внутренние команды аналогичные из busybox, то есть капля в море.
Код
env
printf
pwd
test
false
true
fill.sa
13.1.2018, 6:29
Цитата(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]
И судя по мотороловским патчам, планировалось список расширять.
VINRARUS
13.1.2018, 16:07
Цитата(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 используют, если ты не понял шо я понял, а то я не понял произошло ли это.
fill.sa
13.1.2018, 16:12
Цитата(VINRARUS @ Сегодня, 17:07)
Но это всё вообще не в тему,
Еще как в тему, я жетебе написал логику бузибокса и за счет чего бузибок уменьшают. И один из примеров
Цитата(fill.sa @ 11.1.2018, 10:14)
Таже история и с втроеныеми командами в оболочки, оболочка разрастается за счет этих команда, а в бузибоксе если в оболочке вызвать cd или просто busybox cd, ты вызываеш одну и туже команду, т.е. убрано дублирование одной и тоже функции в оболочке и просто в команде.