LINUX.ORG.RU
ФорумMobile

Попытки запустить Android — Glofiish/Eten x500


0

1

Доброго времени суток.

пытаюсь запустить XDAndroid на x500.

Используется Haret.

Есть XDAndroid, ядро, которое собирал не я, но, по-видимому, собранное отсюда gnufiish.org. С ядром от XDAndroid не стартует. С тем что с gnufiish стартует через Haret, доходит до монтирования карты памяти, и далее — фейл.

Суть фейла в том, что при попытке монтирования в файле init в initrd.gz указан неверный адрес карточки, там для HTC, в eten чуть по-другому.

initrd.gz — на самом деле не gz, а cpio. Разбираю встроенным убунтовским архиватором, правлю файл init, собираю обратно так:

find unpacked_initrd/ -depth -print | cpio -ov > initrd.gz

Вроде бы все собирается и выглядит так же, но при попытке этот initrd использовать ничего не происходит, а если точнее — кернел паник.

в википедии указано, что с 2.6 и далее initrd — сжатый gzip'ом cpio архив. но в данном случае:

vlad@vlad-desktop:~/somedir$ file initrd.gz 
initrd.gz: ASCII cpio archive (SVR4 with no CRC)

и да, initrd — из комплекта XDAndroid.

я определенно делаю что-то не так. но что? спасибо заранее.



Последнее исправление: vlad_33 (всего исправлений: 2)

Ответ на: комментарий от Umberto

если точнее, под M800. Но наработки и под x500 есть. просто Windows Mobile — прошлый век, надо же хоть как-то попытаться обновить.

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

Дак а смысл, пялился я по поводу своего X800-го в этот сайт, думал, суть-то в том, что ни GSM-модуль, ни прочие работать не будут, смысл, чисто «на поднять» андроид?

Umberto ★☆
()
Ответ на: комментарий от vlad_33

И какую цель преследуете? Если из X500го собрать сервачок :) то может чего и выйдет, вроде wifi модуль поднимали, но как кпк он уже будет не функционален.

Umberto ★☆
()
Ответ на: комментарий от vlad_33

таки никто не имеет опыта в сборке initrd?

vlad_33
() автор топика

Курите маны. Вот нужный отрывок из Documentation/initrd.txt:

Compressed cpio images
----------------------

Recent kernels have support for populating a ramdisk from a compressed cpio
archive. On such systems, the creation of a ramdisk image doesn't need to
involve special block devices or loopbacks; you merely create a directory on
disk with the desired initrd content, cd to that directory, and run (as an
example):

find . | cpio --quiet -H newc -o | gzip -9 -n > /boot/imagefile.img

Examining the contents of an existing image file is just as simple:

mkdir /tmp/imagefile
cd /tmp/imagefile
gzip -cd /boot/imagefile.img | cpio -imd --quiet

то бишь как минимум ключа -H newc не хватало.

mad_soft
()
Ответ на: комментарий от mad_soft

> find . | cpio --quiet -H newc -o | gzip -9 -n > ../imagefile.img

find . | cpio --quiet -H newc -o > ../imagefile.img

и то, и друго приводит к no init found, хотя init есть и chmod +x сделан… что же, буду дальше смотреть, где-то отличие…

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

> init есть и chmod +x сделан…

/sbin/init ? Если мне память не изменяет, в initrd/initramfs вроде запускается не он, а что-то другое. /init что-ли... И да - можно ядру указать какой init пользовать в initramfs, скормив параметр rdinit=/путь/к/нужному/init

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