Aller au contenu

[TUTO] Compiler soi même une ROM Nexus 4


Okaryn

Recommended Posts

Merci ElLibe... Je ne vois rien de particulier en différence.

 

Pendant ce temps, j'ai relancé une compilation sans mettre l'optimisation -jxx pour voir la ligne avec l'erreur, car elle n'était plus dans l'historique du terminal ... et ça passe  :o Enfin, il a généré les fichiers bootimg/kernel en tout cas, alors qu'avant ça plantait bien avant.

 

Bon, vu la lenteur de compilation sans mettre "-j" je vais arrêter là pour ce soir et relancer ça demain.

 

Je pouvais toujours me prendre la tête si le plantage venait juste de ce paramètre...  :P

Lien vers le commentaire
Partager sur d’autres sites

Bonjour a tous, je suis sous 13.10 et j'ai suivit le Tuto a la lettre

Mais lors de la compile pour mon méga [color=red][b]sa[/b][/color] me marque :

Make aucune commande pour......

Et du coup pas de ROM.

Ma question est donc faut il connecter le mobile pendant la compile en debug et sinon pourquoi cette erreur alors que le repo se passe bien. Merci

Lien vers le commentaire
Partager sur d’autres sites

A quel moment exactement et quel est la suite de l'erreur ?

 

Tu as bien lancé le lunch pour ton appareil ?

 

Je n'ai pas eu besoin de brancher mon Nexus pour compiler la Slimbean ou la Slimkat, tout est inclus.

Lien vers le commentaire
Partager sur d’autres sites

j'ai un souci bizarre j'ai un repo normal avec la slimkat officielle (hammerhead)
et jela build tranquille.
j'ai fais une copie pour pouvoir faire mes modifs dessus et celle ci (sans modif) ne compile pas ...

il y a un truc spécial a faire car j'ai des erreurs en boucle ?
j'ai copié le dossier avec un cp -R

make[1]: entrant dans le répertoire « /home/fly/android/flykat/kernel/lge/hammerhead »
target thumb C: libcompiler_rt-extras <= external/compiler-rt/lib/mulodi4.c
target asm: libc_common <= bionic/libc/arch-arm/syscalls/_exit.S
/bin/bash: /home/fly/android/flykat/out/host/linux-x86/bin/clang: Permission non accordée
make: *** [/home/fly/android/flykat/out/target/product/hammerhead/obj/STATIC_LIBRARIES/libcompiler_rt-extras_intermediates/lib/mulodi4.o] Erreur 126
make: *** Attente des tâches non terminées....
  GEN     /home/fly/android/flykat/out/target/product/hammerhead/obj/KERNEL_OBJ/Makefile
#
# configuration written to .config
#
make[1]: quittant le répertoire « /home/fly/android/flykat/kernel/lge/hammerhead »

Mon Ccache ne fonctionne pas j'ai l'impression un ccache -s me donne

cache directory                     /home/fly/.ccache
cache hit (direct)                     0
cache hit (preprocessed)               0
cache miss                             0
unsupported compiler option           17
files in cache                         0
cache size                             0 Kbytes
max cache size                      50.0 Gbytes
 

Je suis sous une VirtualBox de Mint 16

 

EDIT : il me met package complete au bout de 10min je pense que le cache est actvié mais qu'il ne se montre pas ..

Modifié par FlyinGrub
Lien vers le commentaire
Partager sur d’autres sites

A quel moment exactement et quel est la suite de l'erreur ?

Tu as bien lancé le lunch pour ton appareil ?

Je n'ai pas eu besoin de brancher mon Nexus pour compiler la Slimbean ou la Slimkat, tout est inclus.

Oui pour lunch, c'est pour compiler la liquidsmooth qui supporte officiellement le i9205 sous le nom meliusltexx. Donc je fait le choix de cet appareil puis je lance la compile.

Ça me marque exactement:

find src : Aucun fichier ou dossier de ce type

puis au bout d'un moment :

#

# configuration written to .config

#

make[1] : on quitte le répertoire « /home/mahe/liquid/kernel/samsung/msm8930-common »

host Executable: checkpolicy (/home/mahe/liquid/out/host/linux-x86/obj/EXECUTABLES/checkpolicy_intermediates/checkpolicy)

make: *** Aucune règle pour fabriquer la cible « /home/mahe/liquid/out/target/product/meliusltexx/obj/STATIC_LIBRARIES/libinit_msm_intermediates/export_includes », nécessaire pour « /home/mahe/liquid/out/target/product/meliusltexx/obj/EXECUTABLES/init_intermediates/import_includes ». Arrêt.

make: *** Attente des tâches non terminées....

host Executable: checkfc (/home/mahe/liquid/out/host/linux-x86/obj/EXECUTABLES/checkfc_intermediates/checkfc)

real 2m22.149s

user 0m52.473s

sys 0m21.911s

Modifié par Snouki
Lien vers le commentaire
Partager sur d’autres sites

j'ai un souci bizarre j'ai un repo normal avec la slimkat officielle (hammerhead)

et jela build tranquille.

j'ai fais une copie pour pouvoir faire mes modifs dessus et celle ci (sans modif) ne compile pas ...

il y a un truc spécial a faire car j'ai des erreurs en boucle ?

j'ai copié le dossier avec un cp -R

 

Il ne faut pas dupliquer le dossier, mais créer un nouveau répertoire avec son propre repo init.

 

Pour ne pas avoir à tout télécharger, tu peux utiliser l'option --reference pour qu'il utilise ton précédent répertoire comme base, ça sera très rapide.

Oui pour lunch, c'est pour compiler la liquidsmooth qui supporte officiellement le i9205 sous le nom meliusltexx. Donc je fait le choix de cet appareil puis je lance la compile.

Ça me marque exactement:

 

Ca donne l'impression que tu n'as pas récupéré tout ce qu'il faut... Tu as bien suivi les commandes données sur cette page ?

 

Ton disque virtuel est assez important, il faut plus de 100Go ? Corbeille bien vidée également.

Lien vers le commentaire
Partager sur d’autres sites

Il ne faut pas dupliquer le dossier, mais créer un nouveau répertoire avec son propre repo init.

 

Pour ne pas avoir à tout télécharger, tu peux utiliser l'option --reference pour qu'il utilise ton précédent répertoire comme base, ça sera très rapide.

c'est ce que j'avais fait au final :) grâce a ton tuto, c'est bizarre car je n'ai vu ce flag nulle part ailleurs ...

Et c'est aussi bizarre pour le ccache de la slimkat qui ne s'affiche pas dans l'utilisation de cache ...

Lien vers le commentaire
Partager sur d’autres sites

c'est ce que j'avais fait au final :) grâce a ton tuto, c'est bizarre car je n'ai vu ce flag nulle part ailleurs ...

Et c'est aussi bizarre pour le ccache de la slimkat qui ne s'affiche pas dans l'utilisation de cache ...

 

Vérifie bien que la ligne "export USE_CCACHE=1" est bien présente dans le fichier "~/.bashrc", peut être qu'il a été mal enregistré.

 

Pour le flag, c'est en lisant des docs non liées aux compilations Android que je suis tombé dessus ;)

Lien vers le commentaire
Partager sur d’autres sites

Malheureusement non :(

 

Je pense que tu devrais poster sur XDA, dans la section Générale de ton téléphone. Tu auras certainement des réponses rapides ;)

 

Si je n'avais pas une aussi petite connexion internet, j'aurai testé moi même, mais passer une nuit pour récupérer les sources c'est un poil long :p

Lien vers le commentaire
Partager sur d’autres sites

Bonjour, quand j'essaye de compiler une build slim unofficial avec linaro 14.01, j'obtiens ceci au bout d'une heure à peu près : 

 

Install: /home/test/slim/out/target/product/mako/system/priv-app/Settings.apk
collect2: error: ld terminated with signal 9 [Killed]
make: *** [/home/test/slim/out/target/product/mako/obj/SHARED_LIBRARIES/libwebviewchromium_intermediates/LINKED/libwebviewchromium.so] Erreur 1
make: *** Attente des tâches non terminées....
Total temps passé: 69 minutes (4182.832678528 secondes) 

 

 

Que dois-je faire ? Merci.
Modifié par Ornadyx
Lien vers le commentaire
Partager sur d’autres sites

Relance la compilation avec :

 

make bacon -j4 2>~/error.log

 

Ca permettra d'avoir la liste complète des erreurs, car là c'est un peu court.

 

As-tu déjà essayé sans modifier Linaro, avec celui d'origine ? D'ailleurs, qu'elle version principale de Linaro ? 4.7, 4.8, 4.9 ?

Modifié par Okaryn
Lien vers le commentaire
Partager sur d’autres sites

Relance la compilation avec :

make bacon -j4 1>~/error.log

Ca permettra d'avoir la liste complète des erreurs, car là c'est un peu court.

As-tu déjà essayé sans modifier Linaro, avec celui d'origine ? D'ailleurs, qu'elle version principale de Linaro ? 4.7, 4.8, 4.9 ?

Avec le 4.8 il me semble, et c'est à dire sans modifier linaro ? J'ai suivi ton tuto pour compiler avec Linaro sauf que j'ai pris le dernier en date. ^_^

Je vais réessayer comme tu m'as dis.

"Envoyé depuis mon Nexus 4 avec Tapatalk"

Lien vers le commentaire
Partager sur d’autres sites

Avec le 4.8 il me semble, et c'est à dire sans modifier linaro ? J'ai suivi ton tuto pour compiler avec Linaro sauf que j'ai pris le dernier en date. ^_^

Je vais réessayer comme tu m'as dis.

 

Ooops, je me suis trompé, j'ai édité mon précédent message. C'est 2>~/error.log pour avoir les erreurs. Le "1" c'est pour l'affichage écran :p Désolé

 

J'utilise aussi la 4.8, ça ne doit donc pas venir de là. Quand on débute, la règle c'est d'abord de faire sans modification, afin de s'assurer que tout est OK. C'est seulement ensuite que l'on ajoute/teste les variantes ;)

Lien vers le commentaire
Partager sur d’autres sites

Ooops, je me suis trompé, j'ai édité mon précédent message. C'est 2>~/error.log pour avoir les erreurs. Le "1" c'est pour l'affichage écran :P Désolé

 

J'utilise aussi la 4.8, ça ne doit donc pas venir de là. Quand on débute, la règle c'est d'abord de faire sans modification, afin de s'assurer que tout est OK. C'est seulement ensuite que l'on ajoute/teste les variantes ;)

 

Trop tard j'ai lancé avec le 1 :p

Et sans modification, ça fonctionne :p pour l'instant c'est en cours ^^

Lien vers le commentaire
Partager sur d’autres sites

Moi il faut que je me bidouille le script pour remplacer le nom de la rom + le dpi. :/

 

Je le fais à la mano c'est vraiment pas pratique... 

 

En théorie il faut:

1) sauvegarder les fichiers nécessaires

2) faire le remplacement des chaines de caractères nécessaires (en espérant que ça ne bouge pas...) 

 

3) compiler

 

4) remettre les informations précédentes

 

Et à chaque fois avant de faire le repo sync, recopier le fichier précédent avant modif pour que le sync se passe bien...

 

Modifié par Burn2
Lien vers le commentaire
Partager sur d’autres sites

Pas besoin de sauvegarder/restaurer le fichier, voir mon message page précédente ;)

 

0/ Suppression des fichiers modifiés

1/ Repo forall [Nom du repo] -c 'git checkout .'

1bis/ Même commande "repo forall" pour chaque repo si cela touche des répertoires différents

2/ Synchro

3/ Modif par "sed", comme pour Linaro pour mettre le nom, le DPI, etc...

4/ Compiler

 

La commande Repo forall remet le fichier supprimé à partir du cache, c'est donc super rapide et ainsi pas de risque.

 

J'ai pas encore remis à jour le tuto à jour avec cette manipulation.

  • Like 2
Lien vers le commentaire
Partager sur d’autres sites

Pas besoin de sauvegarder/restaurer le fichier, voir mon message page précédente  ;)

 

0/ Suppression des fichiers modifiés

1/ Repo forall [Nom du repo] -c 'git checkout .'

1bis/ Même commande "repo forall" pour chaque repo si cela touche des répertoires différents

2/ Synchro

3/ Modif par "sed", comme pour Linaro pour mettre le nom, le DPI, etc...

4/ Compiler

 

La commande Repo forall remet le fichier supprimé à partir du cache, c'est donc super rapide et ainsi pas de risque.

 

J'ai pas encore remis à jour le tuto à jour avec cette manipulation.

Effectivement ça sera plus propre.

Par contre il faut que je revérifie pour mon toolchain, comment on fait une fois compilé pour être sûr d'avoir bien compilé avec linaro?

Lien vers le commentaire
Partager sur d’autres sites

Rejoignez la conversation

Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.

Invité
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...