motofan logo
       
> 

Кросс-компиляция программ, Советы, вопросы, овтеты

voronaam
сообщение 15.8.2007, 18:08


Интересующийся
**

Группа: Пользователи
Сообщений: 36
Регистрация: 27.7.2007
Из: Санкт-Петербург
Пользователь №: 142 647
Модель телефона: MOTOMING (A1200e)
Прошивка: R541_G_11.52.08R

Рейтинг: 18



Для сборки софта полезно ознакомиться с ссылками
http://wiki.openezx.org/Crosscompile
http://www.mkezx.org/

Исходники ядра доступны на http://opensource.motorola.com.
Если вы выберите mkezx, то можете их не качать, авторы mkezx уже позаботились об этом - при необходимости mkezx сам скачивает исходники ядра.

P.S. Если есть уже такая тема, извините, не нашёл.

Добавлено позже (16.8.2007, 1:02):
А вот и первые ответы. Итак, я уже упоминал проект mkezx, на форуме он всегда упоминался как "медленный альтернативный интерфейс". Я же хочу рассказать о другой полезной стороне этого пакета.
Многие (я надеюсь) уже успели вкусить прелестей консоли на телефоне, и почувствовать как не удобен в повседневной жизни ash, как не хватает less и nano и прочих мелких, но таких незаменимых в отвественный момент программ.

Все они собираются пакетом mkezx!

Вот история о том, как я заставил работать swap и ext3 на телефоне. mkezx появляется только во второй части истории.

Итак, я создал на флэшке три раздела. vfat - ext3 - swap. И хочу научить телефон работать с этими дополнительными разделами.
Захожу в /dev, делаю ls mmc* и вижу, что у меня есть только mmca1. То есть файлов, представляющих собой блочные устройства дополнительных разделов нет и я не могу даже обратиться к ним. Не беда!
Смотрите!
Код

# cd /dev
# ls -l mmca1
brw-rw----    1 root     root     243,   1 Jan  1  2000 mmca1
# cd /ezxlocal/
# mknod mmca2 b 243 2
# mknod mmca3 b 243 3

Обратите внимание на число 243. Его я взял из вывода команды ls -l, оно отвечает за драйвер устройства, последнее же число - это просто номер раздела по порядку.

Теперь у нас есть файлы устройств. Осталось только включить swap!
Код

# swapon mmca3
# swapon -s
Filename                        Type            Size    Used    Priority
/ezxlocal/mmca3                 partition       56216   208     -1

Used у вас в начале будет 0, но постепенно заполнится. Эффект от этого вы заметите на обработке больших файлов.

Вот и настало время раздела с ext3.
Код

# mkdir mmc
# mount mmca2 mmc
mount: fs type ext2 not supported by kernel
# mount mmca2 mmc -t ext3
mount: fs type ext3 not supported by kernel

Телефон убеждает нас, что о файловой системе Ext он ничего не знает. Что ж, попробуем его научить.
Итак, мы ставим mkezx как описано во всех мануалах (я собирал сам, во многих местах форума лежат ссылки на уже собранный).
Вкратце, на большом компе распаковываем mkezx-base-image.tar.bz2 на нашу ext3 файловую систему и копируем mkezx.mpkg на vfat-раздел (не забыв сменить расширение на .pkg). Ставим через MpkgInstaller.

После этого у нас есть папка с модулями ядра.
Код

# cd /mmc/mmca1/.system/QTDownLoad/mkezx/mkezx.boot/lib/modules/a1200/
# insmod jbd.o
# insmod ext3.o
# insmod af_packet.o
# cd /ezxlocal
# mount mmca2 mmc
# ls mmc
bin  etc  include  lib  lost+found  sbin  share  utelnetd  var

А теперь смотрим сюда, и радуемся:
Код

# ls mmc/bin
[             deallocvt        grep            nisdomainname  tar
[[            dehtmldiff       grepdiff        nohup          tcptraceroute
addgroup      delgroup         gunzip          openvt         tee
adduser       deluser          gzexe           passwd         tempfile
apt-cache     df               gzip            patch          test
apt-cdrom     diff             head            pidof          time
apt-config    diff3            hexdump         pipe_progress  top
apt-get       dirname          hexedit         printenv       touch
apt-key       dmesg            hostname        printf         tr
ash           dnsdomainname    id              ps             true
awk           domainname       install         pwd            tty
basename      dpkg             interdiff       readlink       umount
bash          dpkg-deb         kill            realpath       uname
bashbug       dpkg-query       killall         recountdiff    uncompress
bunzip2       dpkg-split       length          rediff         uniq
busybox       dropbearconvert  less            reset          unwrapdiff
bzcat         dropbearkey      lessecho        rm             unzip
bzcmp         du               lesskey         rmdir          unzipsfx
bzdiff        dumpkmap         ln              rnano          usleep
bzegrep       echo             loadfont        run            uuidgen
bzexe         editdiff         login           run-parts      vi
bzfgrep       egrep            logname         rx             vlock
bzgrep        elinks           ls              scp            wc
bzip2         env              lsattr          screen         wget
bzip2recover  espdiff          lsdiff          screen-4.0.2   which
bzless        expr             lsof            sdiff          who
bzmore        false            mcookie         sed            whoami
cat           fbgrab           md5sum          seq            xargs
chattr        fbset            mesg            setkeycodes    yes
chgrp         fgrep            mk_cmds         sh             ypdomainname
chmod         file             mkdir           sha1sum        zcat
chown         filterdiff       mkezx-shutdown  sleep          zcmp
chvt          find             mkfifo          sort           zdiff
clear         fixcvsdiff       mknod           splitdiff      zegrep
cmp           flipdiff         mktemp          ssh            zfgrep
combinediff   fold             more            stat           zforce
compile_et    free             mount           strace         zgrep
cp            funzip           mv              strace-graph   zipgrep
cut           gdb              nano            strings        zipinfo
date          gdbserver        nc              su             zless
dbclient      gdbtui           netstat         sync           zmore
dd            getopt           nice            tail           znew

Осталость настроить окружение на использование этого bin и лежащего рядом lib и будет сказка. Ну и написать скрипты, чтобы после перезагрузок телефона не монтировать файловые системы вручную.
Код

# export LD_LIBRARY_PATH=/ezxlocal/mmc/lib
# export PATH=$PATH:/ezxlocal/mmc/bin
# cd /
# uname -a
Linux (none) 2.4.20_mvlcee31-mainstone_pxa27x #1 Jan 1,2003 armv5tel unknown
# type bash
bash is /bin/bash

Работает smile.gif uname это уже так, для проверки.
Обратите внимание, что такое в нашей системе bash. Так что, можно либо писать алиас, либо запускать bash комнадой в стиле /ezxlocal/mmc/bin/bash
Ну, или можно просто собрать свою прошивку с готовым bash'ем, но это уже совсем другая история... smile.gif

Сообщение отредактировал voronaam - 15.8.2007, 21:34
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Positive88
сообщение 16.8.2007, 7:58


Новичок
*

Группа: Пользователи
Сообщений: 12
Регистрация: 14.8.2007
Из: Москва
Пользователь №: 144 459
Модель телефона: А1200
Прошивка: -

Рейтинг: 3.5



круто, спасибо
я так понимаю, там busybox? а вместо glibc что?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
voronaam
сообщение 16.8.2007, 8:02


Интересующийся
**

Группа: Пользователи
Сообщений: 36
Регистрация: 27.7.2007
Из: Санкт-Петербург
Пользователь №: 142 647
Модель телефона: MOTOMING (A1200e)
Прошивка: R541_G_11.52.08R

Рейтинг: 18



Цитата(Positive88 @ 16.8.2007, 11:58) *

круто, спасибо
я так понимаю, там busybox? а вместо glibc что?

glibc smile.gif Там если в корне mkezx сказать make оно вообще начинается собирать всё, что умеет (всё, что было портировано). Я иногда запускаю на несколько часов smile.gif Уже и gtk есть smile.gif

Использовать как окружение всё-таки бы не стал пока... У меня это дело вообще не работает. Впрочем, оно мне пока не очень и надо. Я ещё с такой кучей вещей не разобрался!
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
z3r0c001
сообщение 16.8.2007, 21:30


Интересующийся
**

Группа: Пользователи
Сообщений: 75
Регистрация: 17.7.2007
Пользователь №: 141 731
Модель телефона: e398+e6

Рейтинг: 4.5



ext3? Может 4 гиговую флешь потянет с такой ФС?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
voronaam
сообщение 17.8.2007, 8:45


Интересующийся
**

Группа: Пользователи
Сообщений: 36
Регистрация: 27.7.2007
Из: Санкт-Петербург
Пользователь №: 142 647
Модель телефона: MOTOMING (A1200e)
Прошивка: R541_G_11.52.08R

Рейтинг: 18



Цитата(z3r0c001 @ 17.8.2007, 1:30) *

ext3? Может 4 гиговую флешь потянет с такой ФС?

Если ограничение на размер было вызвано файловой системой, то потянет. У меня нет 4Гб microSD, проверить не могу smile.gif А так, на флэшке можно любую ФС сделать, в принципе. Хоть JFFS2, если не уверен в качестве встроенного контроллера.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
z3r0c001
сообщение 28.8.2007, 19:18


Интересующийся
**

Группа: Пользователи
Сообщений: 75
Регистрация: 17.7.2007
Пользователь №: 141 731
Модель телефона: e398+e6

Рейтинг: 4.5



где б скачать собранный mkEZX?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
tmr
сообщение 29.8.2007, 4:03


Опытный
***

Группа: Пользователи
Сообщений: 143
Регистрация: 21.12.2006
Пользователь №: 112 499
Модель телефона: A1200
Прошивка: 59P

Рейтинг: 90



http://realive.spb.ru/downloads/hainan/
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
z3r0c001
сообщение 29.8.2007, 16:44


Интересующийся
**

Группа: Пользователи
Сообщений: 75
Регистрация: 17.7.2007
Пользователь №: 141 731
Модель телефона: e398+e6

Рейтинг: 4.5



# mknod mmca2 b 243 2
mknod: `mmca2': Operation not permitted

и хоть убейсо( и через бизибокс те же яйца

Добавлено позже (29.8.2007, 17:11):
разобрался а как написать скрипты?

Добавлено позже (29.8.2007, 17:24):
да и еще почему то на uname -a и прочие команды пишет permission denied
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
voronaam
сообщение 29.8.2007, 19:06


Интересующийся
**

Группа: Пользователи
Сообщений: 36
Регистрация: 27.7.2007
Из: Санкт-Петербург
Пользователь №: 142 647
Модель телефона: MOTOMING (A1200e)
Прошивка: R541_G_11.52.08R

Рейтинг: 18



Интересно... А телефон с какой прошивкой? Набери id - ты как кто на телефоне?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
z3r0c001
сообщение 29.8.2007, 19:46


Интересующийся
**

Группа: Пользователи
Сообщений: 75
Регистрация: 17.7.2007
Пользователь №: 141 731
Модель телефона: e398+e6

Рейтинг: 4.5



Прошивка c2 30p

uid=0(root) gid=0(root) groups=0(root)


Добавлено позже (29.8.2007, 20:19):
voronaam,
Может аську дашь?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Polovoy
сообщение 24.9.2007, 7:00


Ветеран
*****

Группа: Пользователи
Сообщений: 322
Регистрация: 12.6.2006
Из: Планета Беларусь
Пользователь №: 87 335
Модель телефона: Red magic 8s

Рейтинг: 208



Последняя инфа с motorolafans.com
Туц!
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Positive88
сообщение 25.9.2007, 8:09


Новичок
*

Группа: Пользователи
Сообщений: 12
Регистрация: 14.8.2007
Из: Москва
Пользователь №: 144 459
Модель телефона: А1200
Прошивка: -

Рейтинг: 3.5



Цитата(Polovoy @ 24.9.2007, 11:00) *

Последняя инфа с motorolafans.com
Туц!

ух, етить!
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
toohes
сообщение 27.9.2007, 11:46


Новичок
*

Группа: Пользователи
Сообщений: 19
Регистрация: 20.9.2007
Пользователь №: 148 494
Модель телефона: a1200e
Прошивка: R541_G_11.52.08R_F3

Рейтинг: 0



Ну чо, кто-нить разобрался как с этим работать?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
maximus2963
сообщение 27.9.2007, 21:31


Ветеран
*****

Группа: Пользователи
Сообщений: 375
Регистрация: 24.10.2005
Из: Молдова, г.Кишинёв
Пользователь №: 55 755
Модель телефона: Motorola ROKR E6
Прошивка: R533_G_11.12.06PYan0

Рейтинг: 15



toohes, ну так если наешь английский - иди на форум и читай wink.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
demonvex
сообщение 27.9.2007, 23:05


Мастер
****

Группа: Пользователи
Сообщений: 208
Регистрация: 4.5.2006
Пользователь №: 81 718
Модель телефона: Motorola RAZR XT910

Рейтинг: 131



Молодцы ребята. Займет это конечно много времени, но уже попахивает сами-знаете-чем... thumbsup.gif
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
toohes
сообщение 28.9.2007, 10:54


Новичок
*

Группа: Пользователи
Сообщений: 19
Регистрация: 20.9.2007
Пользователь №: 148 494
Модель телефона: a1200e
Прошивка: R541_G_11.52.08R_F3

Рейтинг: 0



Цитата(maximus2963 @ 28.9.2007, 1:31) *

toohes, ну так если наешь английский - иди на форум и читай wink.gif

Это понимать как "да, я разобрался" или "не понял вопроса"?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
toohes
сообщение 17.10.2007, 17:31


Новичок
*

Группа: Пользователи
Сообщений: 19
Регистрация: 20.9.2007
Пользователь №: 148 494
Модель телефона: a1200e
Прошивка: R541_G_11.52.08R_F3

Рейтинг: 0



На вчерашний вечер итоги - успешная линковка донговского сэмпла и крах при попытке запустить его из еконсоле.

Только что запустился многофункциональный QE App Template.
Заявки на сдк принимаюццо в райсобесе с 11 до вечера без обеда.

Сообщение отредактировал toohes - 17.10.2007, 21:39
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Ilya Petrov
сообщение 19.10.2007, 5:53


Ветеран
*****

Группа: Пользователи
Сообщений: 504
Регистрация: 30.12.2006
Из: Одесса
Пользователь №: 114 098
Модель телефона: 1742, 1744, 1980
Прошивка: openezx-2.6.30

Рейтинг: 166



Цитата(toohes @ 17.10.2007, 20:31) *

На вчерашний вечер итоги - успешная линковка донговского сэмпла и крах при попытке запустить его из еконсоле.

Только что запустился многофункциональный QE App Template.
Заявки на сдк принимаюццо в райсобесе с 11 до вечера без обеда.


это который с двумя Qlabel и одним кнопком? у меня запустился tongue.gif.

всё равно нормальную прогу не написать sad.gif чтобы при закрытом флипе соответствующее меню и прочее. получается та же жава - но на сях, кастрированная и ни с чем не совместимая.

если есть соответсвующие знания и опыт - помогите допилить G(PE)^2 или порт Openmoko на нашу платформу - тогда будет доступно куча чужого софта написанного под моко или под банальный X11, а платформа ezx - тупиковый путь. ибо сама моторола её похоронила, а сдк реверсить и копатся в хексредакторе, отлавливая невнятные баги в программе, писанной каким-то индусом - занятие такое себе..

Добавлено позже (19.10.2007, 9:00):
Цитата(demonvex @ 28.9.2007, 2:05) *

Молодцы ребята. Займет это конечно много времени, но уже попахивает сами-знаете-чем... thumbsup.gif



сами-знаете-что живет на mkezx.org. ставим на флешку, запускаем из меню иксы с gpe и курим API gpe, gtk и иксов до полного енляйтмента. благо русская клавиатура, звонилка и смсалка уже есть.

пример: http://dev.jerryweb.org/mkphone/

Сообщение отредактировал Ilya Petrov - 19.10.2007, 5:56
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
toohes
сообщение 19.10.2007, 15:04


Новичок
*

Группа: Пользователи
Сообщений: 19
Регистрация: 20.9.2007
Пользователь №: 148 494
Модель телефона: a1200e
Прошивка: R541_G_11.52.08R_F3

Рейтинг: 0



Цитата(Ilya Petrov @ 19.10.2007, 9:53) *

это который с двумя Qlabel и одним кнопком? у меня запустился tongue.gif.

Вот если б ты это позавчера написал, я б расстроился.

Цитата(Ilya Petrov @ 19.10.2007, 9:53) *

всё равно нормальную прогу не написать

Ну это ты э... преувеличил.

Цитата(Ilya Petrov @ 19.10.2007, 9:53) *

если есть соответсвующие знания и опыт

соответствующих нет.
Цитата(Ilya Petrov @ 19.10.2007, 9:53) *

платформа ezx - тупиковый путь. ибо сама моторола её похоронила, а сдк реверсить и копатся в хексредакторе, отлавливая невнятные баги в программе, писанной каким-то индусом - занятие такое себе..

На другой чаше весов выбор между неработающим телефоном или покупкой второго минга.
Цитата(Ilya Petrov @ 19.10.2007, 9:53) *

Добавлено позже (19.10.2007, 9:00):
сами-знаете-что живет на mkezx.org. ставим на флешку, запускаем из меню иксы с gpe и курим API gpe, gtk и иксов до полного енляйтмента. благо русская клавиатура, звонилка и смсалка уже есть.

А так же отсутствие какой бы то ни было документации, и умертвившая мой мозжечок инсталляция в виде дебы + аптгет.

*Когда я говорю "документация" - я не имею в виду заметки на полях, оставляемые девелопером для себя и милостиво оформленные в виде вики.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
toohes
сообщение 19.10.2007, 20:31


Новичок
*

Группа: Пользователи
Сообщений: 19
Регистрация: 20.9.2007
Пользователь №: 148 494
Модель телефона: a1200e
Прошивка: R541_G_11.52.08R_F3

Рейтинг: 0



Полазил по инету - с OPIE и GPE всё то же самое. Документации - с рыбкин член.
C ezx'ом всё просто - поставил яна или донгу и вперёд на мины.
Плюс телефон продолжает работать.
Так что не убедил, доставай козырей.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Кросс-компиляция программ, Советы, вопросы, овтеты · Motorola ROKR E6, E6e, E6tv, MING A1200, A1200i, A1200e, A1200r, A1200w, A1600 · Forum
 

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

 



Текстовая версия Сейчас: 13.6.2025, 15:03

Форум живёт: