Ver la Versión Completa : Busco guía para aprender a compilar roms
Buenas,
Estoy intentando aprender cómo compilar ROMs desde las fuentes, pero las guías que encuentro siempre son para un código específico o sin explicarte el proceso para entenderlo.
No se si alguno tiene o sabe de alguna guía que te explique un poco el proceso y el porqué de esa metodología. Si fuera en inglés o español pues mejor que mejor [emoji5]
Saludos
Enviado desde mi Z1 mediante Tapatalk
luiseteyo
15/04/16, 15:03:34
Buenas! Yo aprendí este año siguiendo el tutorial oficial de cyanogenmod.
Pon en google: How to build Cyanogenmod Zuk Z1 y te saldrá la primera.
Necesitas un PC de 64 bits y o bien una maquina virtual donde instales ubuntu/linux/otra (recomiendo ubuntu 14.10) o una partición con una de estas instaladas. Te recomiendo la partición, menos engorroso y mas rápido en mi opinión.
Al principio cuesta entenderlo pero no desesperes, en cuanto le cojas el tranquillo es fácil y entretenido, preguntame lo que necesites y tratare de ayudarte en lo que pueda. Suerte!
Enviado desde mi Z1 mediante Tapatalk
EDITO: Este es el hilo del que te hablo: https://wiki.cyanogenmod.org/w/Build_for_ham
Gracias por responder!
Ya había leído la guía pero creo haber entendido que es todo según sus fuentes, y si mi memoria no me falla era con un sh para bajar los prebuilds directamente, sin llegar a explicar muy bien el como.
A mi me gustaría hacer algo como tú: cojo las fuentes meto los propetary de colorbird y el kernel de joaopaulo o el nuevo y compilar. De todas maneras me volveré a leer la guía a ver si me perdí algo.
Gracias de nuevo
Enviado desde mi Z1 mediante Tapatalk
luiseteyo
15/04/16, 16:21:09
Gracias por responder!
Ya había leído la guía pero creo haber entendido que es todo según sus fuentes, y si mi memoria no me falla era con un sh para bajar los prebuilds directamente, sin llegar a explicar muy bien el como.
A mi me gustaría hacer algo como tú: cojo las fuentes meto los propetary de colorbird y el kernel de joaopaulo o el nuevo y compilar. De todas maneras me volveré a leer la guía a ver si me perdí algo.
Gracias de nuevo
Enviado desde mi Z1 mediante Tapatalk
Vale! Pensé que querías algo básico básico, y eso es lo más básico que vi por ahi. De todas formas te recomiendo que, si nunca has compilado nada, sigas esa guia al pie de la letra y compiles cm13.
Una vez hayas conseguido eso, te recomendaría que sustituyeras el device tree official por el de MrColdBird. Para ello deberás
1- ir a la carpeta donde tengas descargadas las sources,
2- mostrar los archivos ocultos (creo recorder que es Ctrl.+H).
3- ir a la carpeta .repo
4- ir a la carpeta local_manifests (si no existe la creas)
5- borrar todo lo que haya dentro de la carpeta y crear un archivo "ham.xml" y en el pegar el código fuente que MrColdBird tiene en su post de xda:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="MrColdbird/proprietary_vendor_zuk" path="vendor/zuk" remote="github" revision="cm-13.0" />
<project name="MrColdbird/android_device_zuk_ham" path="device/zuk/ham" remote="github" revision="cm-13.0" />
<project name="CyanogenMod/android_device_qcom_common" path="device/qcom/common" remote="github" revision="cm-13.0" />
<project name="ChromaKernel/cKernel" path="kernel/cyanogen/msm8974" remote="github" revision="cm-13.0" />
</manifest>
Fíjate que eso lo que hace, dicho mal, pero mal MAL, es SUSTITUIR en tu carpeta donde almacenas tus fuentes los directorios que le indicamos. Me explico. Cuando tu creas este archivo xml y sincronizas las Fuentes (repo sync) en vez de actualizar lo que tienes en la carpeta únicamente, va a actualizar primero toda la carpeta (en nuestro caso CM13) y luego va a incluir/sustituir en ella todo lo que esté dentro de CM13/.repo/local_manifest/ham.xml.
De esta forma, con el código de MrColdBird, por ejemplo, primero sincronizará todas las Fuentes en tu carpeta y luego los directorios vendor/zuk, device/zuk/ham, device/qcom/common, y kernel/cyanogen/msm8974.
Asi de sencillo!
Imaginemos que ahora queremos hacer una rom cm13 con el kernel radioactive, por ejemplo. Bueno, pues es fácil, haremos lo siguiente:
1- abrimos el archivo CM13/.repo/local_manifest/ham.xml
2- Vamos a la linea del kernel:
<project name="ChromaKernel/cKernel" path="kernel/cyanogen/msm8974" remote="github" revision="cm-13.0" />
y la sustituimos por la del kernel que queramos. Vamos a github, buscamos al autor del kernel, nos vamos a sus repositorios y encontramos el kernel. En nuestro caso: https://github.com/acuicultor/Radioactive-kernel-HAM.
La primera parte de la línea (project name) hace referencia a github, mientras que la segunda (path) a tu carpeta local. En la linea que tenemos, antes de que la modifiquemos, nos está diciendo que quiere que en su carpeta CM13/kernel/cyanogen/msm8974 se descargue todo lo que haya en el repositorio cKernel de la cuenta de github ChromaKernel, y en concreto la version (o branch) para cm13.
Bueno, pues a sustituir. ¿Cómo quedaría la línea del kernel en nuestro caso?
<project name="acuicultor/Radioactive-kernel-HAM" path="kernel/cyanogen/msm8974" remote="github" revision="cm-13.0" />
Es solo un ejemplo, pero todo funciona así. A mi me queda muchíiisimo por aprender, pero espero que te sirva! Si tienes alguna duda no dudes en preguntar compi!
De nuevo gracias por tu tiempo.
Esta tarde me pondré con ello y si tengo dudas te las expongo por aquí y cuando tengas tiempo y ganas me contestas.
Enviado desde mi Z1 mediante Tapatalk
Ayer conseguí compilar por primera vez con las fuentes de cm usando las fuentes de coldbird y con el nuevo kernel. Lo que me he encontrado al flashearlo es que al iniciar la ROM va muy lento la bootanimation y tarda en iniciar más que las demás ROMs que he probado. Alguna idea?
Enviado desde mi Z1 mediante Tapatalk
luiseteyo
26/04/16, 18:19:26
Ayer conseguí compilar por primera vez con las fuentes de cm usando las fuentes de coldbird y con el nuevo kernel. Lo que me he encontrado al flashearlo es que al iniciar la ROM va muy lento la bootanimation y tarda en iniciar más que las demás ROMs que he probado. Alguna idea?
Enviado desde mi Z1 mediante Tapatalk
Lo mismo me pasó a mi ayer. Con que kernel lo has compilado, con el radiactive? Que branch has usado?
Enviado desde mi Z1 mediante Tapatalk
He usado release3.
He intentado compilar la ROM de temasek pero me da error al compilar cuando compila las .odex. Será fallo en código?
Enviado desde mi Z1 mediante Tapatalk
acuicultor
26/04/16, 20:53:24
He usado release3.
He intentado compilar la ROM de temasek pero me da error al compilar cuando compila las .odex. Será fallo en código?
Enviado desde mi Z1 mediante Tapatalk
Como consejo si me lo permites, yo q tu empezaria con el kernel stock y cuando cojas mas soltura ya iria a por otros porq no es lo mismo coger el KERNEL de cm q un custom, por ejemplo para usar mi kernel y q funcione correctamente tienes que hacer modificaciones en el código de la rom y para empezar creo q es mejor hacer sync y compilar tal cual.
Enviado desde mi A0001 mediante Tapatalk
Como consejo si me lo permites, yo q tu empezaria con el kernel stock y cuando cojas mas soltura ya iria a por otros porq no es lo mismo coger el KERNEL de cm q un custom, por ejemplo para usar mi kernel y q funcione correctamente tienes que hacer modificaciones en el código de la rom y para empezar creo q es mejor hacer sync y compilar tal cual.
Enviado desde mi A0001 mediante Tapatalk
Si compilo con el kernel stock se podría flashear tu kernel desde tu zip sin problemas?
Enviado desde mi Z1 mediante Tapatalk
acuicultor
26/04/16, 22:23:37
Si compilo con el kernel stock se podría flashear tu kernel desde tu zip sin problemas?
Enviado desde mi Z1 mediante Tapatalk
Por supuesto
Enviado desde mi A0001 mediante Tapatalk
Bueno, he conseguido compilar la última de temasek v7.2, la estoy usando sin ningún tipo de problema.
Cual seria el siguiente paso? Toolchains?
Enviado desde mi Z1 mediante Tapatalk
vBulletin® v3.8.1, Copyright ©2000-2025, Jelsoft Enterprises Ltd.