Hilo para intentar portar Ubuntu Touch (UBPorts) a otros terminales

  • impreza233
  • Avatar de impreza233 Autor del tema
  • Conectado
  • Navegador Platino
  • Navegador Platino
  • ¿Quién es Homer? Yo me llamo tipo de incógnito
Más
5 años 7 meses antes #11

Antes de seguir con este hilo, quisiera hacer un par de puntualizaciones sobre Halium-boot y systemimage (que serán los resultados de la realización de todo este tutorial), aparte de algunas averiguaciones que he ido realizando durante estos días de "dar cera, pulir cera".

-Ojo con los fixup-mountpoints. Hay que respetar al completo toda la sintaxis del documento en cuestión a la hora de modificarlo. ¿Por qué digo esto? Porque, si te equivocas en alguna cosa, aunque sea una chorrada, luego a la hora de flashearlo puede causar problemas, algunos de índole muy seria, como contaré en futuros posts. Así que, por favor, tened MUCHO cuidado en esta cuestión.

-También llevad atención con el sistema operativo con el que compiléis esto. He tenido malas experiencias con Ubuntu 18.04 (sí, he probado a realizar el proceso con varias máquinas), con errores de compilador tan variados como:

FAILED: /bin/bash -c "prebuilts/misc/linux-x86/flex/flex-2.5.39 -o/home/impreza233/Descargas/halium/out/host/linux-x86/obj32/SHARED_LIBRARIES/libsepol_intermediates/cil/src/cil_lexer.c external/selinux/libsepol/cil/src/cil_lexer.l"
flex-2.5.39: loadlocale.c:130: _nl_intern_locale_data: La declaraci?n `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' no se cumple.

Y cosas todavía más bizarras. Mi recomendación es que se compile todo con Ubuntu 16.04 para evitar males mayores.

-Y, por último, sabed que me llena de orgullo y satisfacción me complace comunicar que tengo una versión compilada de Halium-boot y de systemimage perteneciente a Halium (es decir, que tengo algo cuasi-funcional de Ubuntu Touch, ya que arranca sin pegas). Si alguno que mire esto tiene un Moto E 2015 4G/LTE (modelos XT1524/1526 etc.) que descargue estos archivos ( www.dropbox.com/sh/0oqii0tl46k84hj/AACuR...hnaZO2RjGxR68ja?dl=0 ) y que pruebe a realizar el proceso disponible en esta página ( docs.ubports.com/en/latest/porting/installing-16-04.html ) especialmente el procedimiento del rootfs. He estado haciendo mil pruebas, sin embargo, parece ser que ese rootfs, o no se instala bien, o hay algo que no funciona como corresponde, ya que no tengo el acceso al SSH necesario para activar el Ubuntu Touch. Estoy intentando averiguar las causas por mi parte, pero nunca estaría de más una ayuda externa (cuatro ojos siempre ven más que dos...)


Un saludo

Por favor, Identificarse para unirse a la conversación.

  • impreza233
  • Avatar de impreza233 Autor del tema
  • Conectado
  • Navegador Platino
  • Navegador Platino
  • ¿Quién es Homer? Yo me llamo tipo de incógnito
Más
5 años 7 meses antes #12

Bien, vengo de nuevo a la carga con más chicha de la buena jeje. Antes de seguir en esto, recomiendo hacer tres cosas:

-Un buen vaso de refresco o cualquier bebida que anime cuerpo y mente. Lo necesitarás para alimentar la infinita paciencia que deberás tener cuando necesites modificar el defconfig del dispositivo debido a los errores de compilación (que seguro que los tendrás, especialmente cuando se realice el porting a dispositivos nuevos y no existentes en UBPorts).

-Una buena refrigeración del ordenador, ya que estará al 100% de CPU la mayoría del tiempo, debido al proceso de compilación. Si el ordenador es portátil, recomiendo ponerle base refrigeradora.

-Y, por último, tener una gran cantidad de espacio disponible en el disco duro. Es posible que, llegados a este punto, tengas ya más de 30 gigas de espacio ocupados por la carpeta BUILDDIR comentada al principio. Para que nada falle, asegúrate de tener mucho espacio en disco (con 10/20 gigas más disponibles sería suficiente para acabar el proceso).

Y, sin más, vamos al lío:

Vamos a configurar el kernel para que sea compatible para que sea 100% compatible con Ubuntu Touch. Para ello, nos valdremos de esta herramienta. Ve directamente a tu carpeta BUILDDIR, ábrela en tu terminal, y teclea este comando:

./halium/halium-boot/check-kernel-config ruta/a/mi/defconfig -w

En mi caso, la ruta era BUILDDIR/kernel/motorola/msm8916/arch/arm/configs y el archivo era surnia.defconfig. Este tipo de archivos (los defconfig) son fáciles de distinguir porque llevan el codename del dispositivo unido con .defconfig.

Sin embargo, esta herramienta no es perfecta. Te corregirá todos los errores que hayan en el kernel, pero recomiendo enormemente la aplicación de los workarounds que hay en estas dos páginas después de la aplicación del comando que he comentado: docs.halium.org/en/latest/porting/common...el-build-errors.html y docs.halium.org/en/latest/porting/common...em-build-errors.html ya que así te evitarás de dolores de cabeza a la hora de la compilación en sí.

Después de haber afinado el kernel, ya queda el proceso final. Ve a tu BUILDDIR, vuelve a abrirla en un terminal, y ejecuta estos comandos:
source build/envsetup.sh
breakfast [inserte aquí el codename de tu dispositivo]
mka halium-boot
mka systemimage

En mi caso, la realización completa de la compilación tardó 10 minutos el halium-boot y 28 minutos el systemimage (con un Intel i5 Skylake). Estos tiempos son orientativos, y podrían variar en función de la potencia de tu procesador. Aquí os dejo unas imágenes del proceso:

Y si has llegado hasta aquí, mi más sincera felicitación. Has conseguido compilar Halium para tu terminal. Esto se merece un sombrero tejano con un air horn:


Un saludo

Por favor, Identificarse para unirse a la conversación.

¡Atención! Este sitio usa cookies y tecnologías similares.

Si no cambia la configuración de su navegador, usted acepta su uso. Saber más

Acepto

Vea nuestra política de cookies y enlaces de interés aquí