[Tutorial] Wie erstellt man ein ROM aus den Sourcen (AOSP, CM, AOKP, AOSPA usw...)

  • 197 Antworten
  • Letztes Antwortdatum
Macht es Sinn dem ccache 5-8gb zu spendieren?

Ne, ich denke nicht zwischen 25 GB und100 GB habe ich mal bei den cmś gelesen.

Macht es Sinn die $out auf externe usb-disk, nfs, smb, cifs share o.ä. umzubiegen?
Ja das denke ich schon weil der $OUT Ordner seeehr groß wird. Bei mir selbst wenn nur für ein Geräts builds gemacht werden , schon beachtliche 32 GB

Bhoo, langsam. Sparsam mit log umgehen. Hab gelesen, man soll immer mit dem ersten error/warning anfangen. Alle nachfolgende beziehen sich meist auf den vorherigen.

Auf den ersten Blick sehe ich eine Gemeinsamkeit: ...find dummy, Datei Verzeichnis nicht gefunden. Und die 3 nachfolgenden ebenfalls.
Dort müssen wir beide ansetzen.

Ich weiß, aber es gibt nirgendwo eine ausgabe die mit
"error:" beginnt daher ja die frage :D

EDIT:
Wir ignorieren mal den vorherigen build fehler.denn viel wichtiger ist mir für das pirmäre Gerät zu basteln

funktionierte eigentlich die ganze zeit nur seit vorhin nicht mehr.

Ich habe ja gestern den ganzen krempel vom Xperia P hunzugefügt und da gab es wohl konflikte mit den configs daher heute wieder entfernt. und dennoch bleibt dieser fehler
(sind nur die lezten zeilen des log da vorher keine error waren
Code:
ECUTABLES/llvm-tblgen_intermediates/llvm-tblgen)
  HOSTCC  scripts/basic/fixdep
  GEN     /home/schnittenberg/cm/out/target/product/amami/obj/KERNEL_OBJ/Makefile
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
Install: /home/schnittenberg/cm/out/host/linux-x86/lib/libc++.so
host Executable: dalvikvm_32 (/home/schnittenberg/cm/out/host/linux-x86/obj32/EXECUTABLES/dalvikvm_intermediates/dalvikvm32)
host SharedLib: libc++ (/home/schnittenberg/cm/out/host/linux-x86/obj/lib/libc++.so)
  HOSTCC  scripts/kconfig/zconf.tab.o
scripts/kconfig/zconf.tab.c:200:24: fatal error: zconf.hash.c: Datei oder Verzeichnis nicht gefunden
#include "zconf.hash.c"
                        ^
compilation terminated.
host SharedLib: libbacktrace_libc++_32 (/home/schnittenberg/cm/out/host/linux-x86/obj32/lib/libbacktrace_libc++.so)
make[3]: *** [scripts/kconfig/zconf.tab.o] Fehler 1
make[2]: *** [cm_rhine_amami_row_defconfig] Fehler 2
make[1]: *** [sub-make] Fehler 2
make[1]: Verzeichnis »/home/schnittenberg/cm/kernel/sony/msm8974« wird verlassen
make: *** [/home/schnittenberg/cm/out/target/product/amami/obj/KERNEL_OBJ/.config] Fehler 2
make: *** Auf noch nicht beendete Prozesse wird gewartet …
make: Verzeichnis »/home/schnittenberg/cm« wird verlassen

#### make failed to build some targets (01:03 (mm:ss)) ####

was ich schon versucht habe:

#wie im log vorgeschlagen
cd/kernel/sony/msm8974
make mkproper
Code:
schnittenberg@pc:~/cm$ cd kernel/sony/msm8974
schnittenberg@pc:~/cm/kernel/sony/msm8974$ make mkproper
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
scripts/kconfig/conf --silentoldconfig Kconfig
***
*** Configuration file ".config" not found!
***
*** Please run some configurator (e.g. "make oldconfig" or
*** "make menuconfig" or "make xconfig").
***
make[2]: *** [silentoldconfig] Fehler 1
make[1]: *** [silentoldconfig] Fehler 2
make: *** Keine Regel, um »mkproper« zu erstellen.  Schluss.

#### make failed to build some targets (2 seconds) ####

schnittenberg@pc:~/cm/kernel/sony/msm8974$
dann repo sync um (falls ich doch änderungen vorgenommen habe an die ich mich nicht erinnern kann) die vorherigen einstellungen wieder zu erhalten, aber fehler besteht weiterhin

dann hab ich weil ja im log steht "msm8974 is not clean" aus verzweiflung den gesamten ordner "msm8974" gelöscht und anschließend erneut
repo sync
erneuter buildversuch scheitert mit exakt dem ersten log.

EDIT: Ich Idiot :D hab den fehler entdeckt, einen jedenfalls,
es heißt "make mrproper" :D

EDIT:
Code:
host Executable: dalvikvm_32 (/home/schnittenberg/cm/out/host/linux-x86/obj32/EXECUTABLES/dalvikvm_intermediates/dalvikvm32)
host SharedLib: libc++ (/home/schnittenberg/cm/out/host/linux-x86/obj/lib/libc++.so)
  HOSTCC  scripts/kconfig/zconf.tab.o
scripts/kconfig/zconf.tab.c:200:24: fatal error: zconf.hash.c: Datei oder Verzeichnis nicht gefunden
#include "zconf.hash.c"
der fehler bleibt allerdings

EDIT: also scheinbar behoben der fehler aber ich warte ab bis es durch gelaufen ist bis zum bitteren ende

nur habe ich leider keine ahnung mehr wie genau ich ihn behoben habe aber läuft wieder :p
 
Zuletzt bearbeitet:
Tag,
ich bin auch ein echter Laie was builden angeht. Vielleicht kann mir ja jemand helfen.
Es geht um das Huawei P8
Hier der Log:

[blackball@mAchine android]$ make hwgra
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=5.0.2
CM_VERSION=12-20151201-UNOFFICIAL-hwgra
TARGET_PRODUCT=cm_hwgra
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=cortex-a7
TARGET_2ND_ARCH=
TARGET_2ND_ARCH_VARIANT=
TARGET_2ND_CPU_VARIANT=
HOST_ARCH=x86_64
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.1.6-1-ARCH-x86_64-with-glibc2.2.5
HOST_BUILD_TYPE=release
BUILD_ID=LRX22G
OUT_DIR=/home/blackball/android/out
============================================
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
find: "src": Datei oder Verzeichnis nicht gefunden
"ebtables is disabled on this build"
find: "dummy": Datei oder Verzeichnis nicht gefunden
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:85: Warnung: Die Befehle für das Ziel „DTS_PARSE_CONFIG“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:85: Warnung: Alte Befehle für das Ziel „DTS_PARSE_CONFIG“ werden ignoriert
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:108: Warnung: Die Befehle für das Ziel „/home/blackball/android/kernel/arch/arm/configs/hw_cm_hwgra_defconfig“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:108: Warnung: Alte Befehle für das Ziel „/home/blackball/android/kernel/arch/arm/configs/hw_cm_hwgra_defconfig“ werden ignoriert
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:129: Warnung: Die Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/obj/KERNEL_OBJ/.config“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:129: Warnung: Alte Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/obj/KERNEL_OBJ/.config“ werden ignoriert
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:143: Warnung: Die Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/obj/KERNEL_OBJ/arch/arm/boot/zImage“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:143: Warnung: Alte Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/obj/KERNEL_OBJ/arch/arm/boot/zImage“ werden ignoriert
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:147: Warnung: Die Befehle für das Ziel „HISI_PILOT_PREBUILD“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:147: Warnung: Alte Befehle für das Ziel „HISI_PILOT_PREBUILD“ werden ignoriert
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:167: Warnung: Die Befehle für das Ziel „kernelconfig“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:167: Warnung: Alte Befehle für das Ziel „kernelconfig“ werden ignoriert
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:174: Warnung: Die Befehle für das Ziel „zImage“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:174: Warnung: Alte Befehle für das Ziel „zImage“ werden ignoriert
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:174: Warnung: Die Befehle für das Ziel „Image“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:174: Warnung: Alte Befehle für das Ziel „Image“ werden ignoriert
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:177: Warnung: Die Befehle für das Ziel „pclint_kernel“ werden überschrieben
device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:177: Warnung: Alte Befehle für das Ziel „pclint_kernel“ werden ignoriert
find: "spam_filter/src": Datei oder Verzeichnis nicht gefunden
PRODUCT_COPY_FILES device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml ignored.
No private recovery resources for TARGET_DEVICE hwgra
build/core/tasks/kernel.mk:218: Warnung: Die Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/obj/KERNEL_OBJ/.config“ werden überschrieben
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:129: Warnung: Alte Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/obj/KERNEL_OBJ/.config“ werden ignoriert
build/core/tasks/kernel.mk:239: Warnung: Die Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/obj/KERNEL_OBJ/arch/arm/boot/zImage“ werden überschrieben
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:143: Warnung: Alte Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/obj/KERNEL_OBJ/arch/arm/boot/zImage“ werden ignoriert
build/core/tasks/kernel.mk:264: Warnung: Die Befehle für das Ziel „kernelconfig“ werden überschrieben
kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:167: Warnung: Alte Befehle für das Ziel „kernelconfig“ werden ignoriert
build/core/tasks/kernel.mk:278: Warnung: Die Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/kernel“ werden überschrieben
build/core/Makefile:46: Warnung: Alte Befehle für das Ziel „/home/blackball/android/out/target/product/hwgra/kernel“ werden ignoriert
make: *** Keine Regel, um „hwgra“ zu erstellen. Schluss.

#### make failed to build some targets (02:07 (mm:ss)) ####

[blackball@mAchine android]$

Danke schonmal :)
 
Zuletzt bearbeitet:
fromfuture schrieb:
Tag,
ich bin auch ein echter Laie was builden angeht
Willkommen in der Runde :)

find: "src": Datei oder Verzeichnis nicht gefunden

find: "dummy": Datei oder Verzeichnis nicht gefunden

kernel/huawei/hwgra/kernel/huawei/hwgra/Android.mk:85:

device/huawei/hwgra/kernel/huawei/hwgra/Android.mk:85:
fällt dir was auf?
 
Ok. Kernel Verzeichnis doppelt. Deswegen die beiden Dateien nicht gefunden?
 
Jep. Schau mal in die manifest, die kernelzeile stimmt nicht. Das Zielverzeichnis.

Und ins device gehört es, glaub ich, nicht hin. Das ist doppelt und kann dort raus.
 
@xz1c
Kannst du die langen Logs bitte in einen Spoiler legen? Da scrollt man ja ewig.

@mratix

Danke. Ich gucke mal rein.

Nun kommt diese Frage ....

*
* Restart config...
*
*
* Linux/arm 3.10.61 Kernel Configuration
*
Physical address of main memory (PHYS_OFFSET) [] (NEW) Was soll ich hier eingeben ?
 
Zuletzt bearbeitet:
@fromfuture für mich sieht das aus als wäre der Kernel (3.10) für marshmallow also zumindest mein gerät nutzt diesen ab mm und davor den 3.40.. aber wie sooft kann ich mich auch irren

@fromfuture selbstverständlich mache ich das, ab jetzt :D

bei der gelegenheit, @mratix ich habe mal wieder ein problem bei dem du (und jeder andere natürlich auch) mir helfen könnt, hoffe ich

nachdem die builds auf cm-12.1 nun sicher laufen versuchte ich mal cm-13.0 zum laufen zu kriegen.die ersten fehler konnte ich selber beheben aber hier scheiter ich nun kläglich weil ich nicht weiß, was mein lieber computer von mir will

Code:
make  -C kernel/sony/msm8974 O=/home/schnittenberg/cm-13.0/out/target/product/amami/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE="/home/schnittenberg/cm-13.0/prebuilts/misc/linux-x86/ccache/ccache arm-eabi-" VARIANT_DEFCONFIG= SELINUX_DEFCONFIG= cm_rhine_amami_row_defconfig
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird betreten
  GEN     /home/schnittenberg/cm-13.0/out/target/product/amami/obj/KERNEL_OBJ/Makefile
#
# configuration written to .config
#
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird verlassen
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird betreten
  GEN     /home/schnittenberg/cm-13.0/out/target/product/amami/obj/KERNEL_OBJ/Makefile
#
# configuration written to .config
#
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird verlassen
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird betreten
ccache: FATAL: Could not find compiler "arm-eabi-gcc" in PATH
  CHK     include/linux/version.h
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird verlassen
make  -C kernel/sony/msm8974 O=/home/schnittenberg/cm-13.0/out/target/product/amami/obj/KERNEL_OBJ ARCH=arm CROSS_COMPILE="/home/schnittenberg/cm-13.0/prebuilts/misc/linux-x86/ccache/ccache arm-eabi-" zImage
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird betreten
ccache: FATAL: Could not find compiler "arm-eabi-gcc" in PATH
  GEN     /home/schnittenberg/cm-13.0/out/target/product/amami/obj/KERNEL_OBJ/Makefile
scripts/kconfig/conf --silentoldconfig Kconfig
ccache: FATAL: Could not find compiler "arm-eabi-gcc" in PATH
  Using /home/schnittenberg/cm-13.0/kernel/sony/msm8974 as source for kernel
  GEN     /home/schnittenberg/cm-13.0/out/target/product/amami/obj/KERNEL_OBJ/Makefile
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[3]: »include/generated/mach-types.h« ist bereits aktualisiert.
  CC      kernel/bounds.s
ccache: FATAL: Could not find compiler "arm-eabi-gcc" in PATH
make[3]: *** [kernel/bounds.s] Fehler 1
make[2]: *** [prepare0] Fehler 2
make[1]: *** [sub-make] Fehler 2
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird verlassen
make: *** [TARGET_KERNEL_BINARIES] Fehler 2

#### make failed to build some targets (35 seconds) ####

Irgendjemand ne idee oder lösung?

EDIT: allem anschein nach ist diese zeile
Code:
ccache: FATAL: Could not find compiler "arm-eabi-gcc" in PATH
der konkrete fehler da die häufiger auftaucht nur weiß ich nicht so recht etwas damit anzufangen. hat das was mit meiner .bashrc zutun?

EDIT2: hab nun versucht ccache geleert, anschließend meinen kernel konfiguriert (make cm_rhine_amami_row_defconfig)
und dann nochmal versucht nun hat sich der error wie folgt geändert
Code:
arm-linux-androideabi-gcc: error trying to exec 'cc1': execvp: No such file or directory
make: *** [/home/schnittenberg/cm-13.0/out/target/product/amami/obj/lib/crtbegin_static1.o] Fehler 1
make: *** Auf noch nicht beendete Prozesse wird gewartet …
make: Verzeichnis »/home/schnittenberg/cm-13.0« wird verlassen

#### make failed to build some targets (41 seconds) ####
 
Zuletzt bearbeitet:
Ein Spoiler sieht irgendwie anders aus :D
Der Kernel ist für 5.0.1.
Zumindest sagt es die Sourcen Quelle.
 
Ein Spoiler sieht irgendwie anders aus
what? :D was mach ich falsch bei mir wird es als spoiler angezeigt sorry aber wie an der anzahl meiner beiträge zu sehen ist, bin ich recht neu im forum es sei mir hoffentlich verziehen.
Der Kernel ist für 5.0.1.
Zumindest sagt es die Sourcen Quelle.

Ok und was die SourceQuelle sagt stimmt dann wohl :D
mein neuester error (sorry wegen dem pseudo spoiler ich hoffe diesbezüglich bald eingewiesen zu werden :D )

Code:
ccache: FATAL: Could not find compiler "arm-eabi-ld" in PATH
make[2]: *** [vmlinux.o] Fehler 1
make[1]: *** [sub-make] Fehler 2
make[1]: Verzeichnis »/home/schnittenberg/cm-13.0/kernel/sony/msm8974« wird verlassen
make: *** [TARGET_KERNEL_BINARIES] Fehler 2

#### make failed to build some targets (59 seconds) ####

Ich schnall das echt nicht, was meint der mit "Cant find compiler in PATH"?
 
Bin am grübeln...
Hast du die path-variable noch in ~/.profile bzw. ~/.bashrc drinnen? Oder geändert?
Häng sie mal zum anschauen rein (nur den Android-Abschnitt, nicht komplett).

Äußerst merkwürdig, vorher hat es ja auch getan. Paketupdates? Reinstall?

Ich wechsle mal zum PC und schau es mir dort in groß an.
Plesse hold the line...
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: xz1c
naja gemacht hat er es vorher aber auch nur im 12.1 tree. allerdings zickt er dort jetzt auch rum kp warum

Code:
ystem/core/init/vendor_init.c:42:13: error: 'ENOSYS' undeclared (first use in this function)
     return -ENOSYS;
             ^
system/core/init/vendor_init.c:42:13: note: each undeclared identifier is reported only once for each function it appears in
system/core/init/vendor_init.c:43:1: error: control reaches end of non-void function [-Werror=return-type]
}
^
cc1: some warnings being treated as errors
make: *** [/home/schnittenberg/cm/out/target/product/amami/obj/EXECUTABLES/init_intermediates/vendor_init.o] Fehler 1
make: *** Auf noch nicht beendete Prozesse wird gewartet …
  GEN     /home/schnittenberg/cm/out/target/product/amami/obj/KERNEL_OBJ/Makefile
#
# configuration written to .config
#
make[1]: Verzeichnis »/home/schnittenberg/cm/kernel/sony/msm8974« wird verlassen
make[1]: Verzeichnis »/home/schnittenberg/cm/kernel/sony/msm8974« wird betreten
  CHK     include/linux/version.h
  HOSTCC  scripts/unifdef
make[1]: Verzeichnis »/home/schnittenberg/cm/kernel/sony/msm8974« wird verlassen
make: Verzeichnis »/home/schnittenberg/cm« wird verlassen

#### make failed to build some targets (01:07 (mm:ss)) ####
die einzigen "updates" waren aktuelle repo syncs und ein kernel update welches mein system automatisch gemacht hat.
die path variable habe ich bisher weder eingetragen, noch geändert oder entfernt, allerdings schien das bisher ja auch nicht nötig.
hier mal der letzte teil meiner ~/.bashrc
das ist generell alles was ich hinzugefügt habe

Code:
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
    export USE_CCACHE=1
    #AndroidDev PATH
export PATH=${PATH}:~/android-sdk-linux/tools

export PATH=${PATH}:~/android-sdk-linux/platform-tools
 
Zu letzten build-errorlog kann ich dir leider nichts sagen.
Was ich dort entnehmen kann, er ist am kernel dran und *boom* Sorry Kernelmathematik ist mir zu hoch :)
Es ist kein Verzeichnis-Problem, eher ein Parameter/Wert/configfile welches da nicht passt.
Unterhalb des /kernel Verzeichnisses gibts immer eine readme, doku usw. Vielleicht verrät die, was wie konfiguriert od. gestartet werden muss.

--

Die PATH-Geschichte sieht soweit gut aus. Zumindest die config. Aber ist sie auch gerade aktiv?
Code:
export | grep PATH
verrät es. Zumindest laut log, ist die es, sonst würde der build nicht rennen. Bezieht sich daher eher auf das vorherige Posting.

Achja, wenn du Änderungen an ~/.bashrc machst, müssen die auch initiiert (angewandt) werden.
- durch Profilrestart (xinit, logout+login)
- durch Systemstart (init, reboot)
- durch direkt
Code:
cd ~
. .bashrc
oder einfach nur schnell per
Code:
export variable=wert
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: xz1c
Code:
schnittenberg@pc:~/cm$ export | grep PATH
declare -x ANDROID_BUILD_PATHS="/home/schnittenberg/cm/out/host/linux-x86/bin:/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin:/home/schnittenberg/cm/prebuilts/gcc/linux-x86/:/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin:/home/schnittenberg/cm/development/scripts:/home/schnittenberg/cm/prebuilts/devtools/tools:/home/schnittenberg/cm/prebuilts/android-emulator/linux-x86_64:"
declare -x ANDROID_PRE_BUILD_PATHS="/usr/lib/jvm/java-7-openjdk-amd64/bin:"
declare -x DEFAULTS_PATH="/usr/share/gconf/mate.default.path"
declare -x MANDATORY_PATH="/usr/share/gconf/mate.mandatory.path"
declare -x PATH="/usr/lib/jvm/java-7-openjdk-amd64/bin:/home/schnittenberg/cm/out/host/linux-x86/bin:/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.8/bin:/home/schnittenberg/cm/prebuilts/gcc/linux-x86/:/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin:/home/schnittenberg/cm/development/scripts:/home/schnittenberg/cm/prebuilts/devtools/tools:/home/schnittenberg/cm/prebuilts/android-emulator/linux-x86_64:/home/schnittenberg/bin:/home/schnittenberg/bin:/home/schnittenberg/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/schnittenberg/android-sdk-linux/tools:/home/schnittenberg/android-sdk-linux/platform-tools"
declare -x XDG_SEAT_PATH="/org/freedesktop/DisplayManager/Seat0"
declare -x XDG_SESSION_PATH="/org/freedesktop/DisplayManager/Session0"
den rest geh ich mal stück für stück durch, was mich halt nur wundert ist das ich nix verändert und gestern abend noch ein build fertig gestellt habe und nu..puff dieses gezicke. danke dir auf jeden fall erstmal und falls dir noch was zu obrigem einfällt ich bin da :D

Edit: habe jetzt einmal # make clean und anschließend einen neuen build gestartet da ich bisher eigentlich nur ein ota package machen wollte und ich das gefühl habe das er mit den files nicht klar kam. Jetzt arbeitet er sicher erstmal aber bisher sieht es wirklich aus als wäre das die lösung zumindest für dieses Problem
 
Zuletzt bearbeitet:
ich schau es mir noch in Ruhe an, vielleicht entdecke ich was.
OT: Bin heute Nacht wach, muss bis 4:30 Bereitschaft schieben und kann daher "herumcomputern".

xz1c schrieb:
allem anschein nach ist diese zeile
Code:
ccache: FATAL: Could not find compiler "arm-eabi-gcc" in PATH
der konkrete fehler da die häufiger auftaucht nur weiß ich nicht so recht etwas damit anzufangen. hat das was mit meiner .bashrc zutun?
Das hier macht mich seeehr stutzig.
Einerseits meckert ccache dass er schlicht und einfach den compiler nicht kennt. Was partout absolut sinnlos ist.
Entweder ist der Cache übergelaufen oder hat sonst irgendein Funktionsproblem mit dem hit (Zugriff).

Check doch mal den Zustand von ccache
Code:
croot
watch -n5 -d prebuilts/misc/linux-x86/ccache/ccache -s

Übrigens, dieser verrät auch wie hoch die
Code:
export CCACHE_SIZE="50G"
bzw. Cachegröße tatsächlich sein muss :)
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: xz1c
@xz1c Schau mal hier rein: AOSP Building Kernels
Die beiden letzten Abschnitte, da sehe ich Gemeinsamkeiten zu dem Problem.

Code:
export PATH=$(pwd)/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin:$PATH
Das dürfte den gcc-compiler finden. Achte auf die korrekte Version.

Persönliche finde ich diesen export ziemlich strange und würde ihn so nicht global in ~/.bashrc aufnehmen. Eher nur temporär, also während dem build ausführen. Dürfte eine ziemliche Belastung für den Normalbetrieb sein. pwd bedeutet = aktuelles Verzeichnis. Eigentlich gehört dort stattdessen die croot rein, falls die überhaupt als Variable existiert.
 
Zuletzt bearbeitet:
fromfuture schrieb:
Ein Spoiler sieht irgendwie anders aus :D
Der Kernel ist für 5.0.1.
Zumindest sagt es die Sourcen Quelle.

Die fehlt eine passende defconfig, entweder du gibst sie an oder verwendest stattdessen einen zuvor erstellten kernel ( TARGET_PREBUILT_KERNEL)
The kernel configuration file used during the build process is referenced in TARGET_KERNEL_CONFIG variable in device/vendor-name/device-name/BoardConfig.mk. It generally points to kernel/vendor-name/kernel-name/arch/arm/configs/cyanogenmod_device-name_deconfig.

To make a custom kernel configuration file, you can use the configuration build tools from the kernel dir, e.g. make menuconfig, and save the resulting hidden .config file to the location specified in TARGET_KERNEL_CONFIG. Then run make mrproper from the kernel dir and go back to the CM android source root dir (croot) before building.

Doc: integrated kernel building - CyanogenMod
 
  • Danke
Reaktionen: mratix und fromfuture
@mratix

Einerseits meckert ccache dass er schlicht und einfach den compiler nicht kennt. Was partout absolut sinnlos ist.
Entweder ist der Cache übergelaufen oder hat sonst irgendein Funktionsproblem mit dem hit (Zugriff).
habe den ccache geleert und wenn man das als "optimum" sehen darf was er bei den max cachen sagt wäre das in meinem fall 1gb:glare::huh:

nehm ich erstmal so hin da ich das ganze ohnehin auf ner ssd zu laufen habe und daher zwecks der geschwindigkeit im Grunde nicht meckern kann.
lass gerade noch einen versuch durch laufen (mit -n also quasi ohne wirklich auszuführen) mal sehen was raus kommt..

EDIT: Fehler besteht immernoch aber ich habe folgendes "raus bekommen"
Code:
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/kernel/head.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/kernel/init_task.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find init/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find usr/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/vfp/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/kernel/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/mm/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/common/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/net/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/crypto/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/mach-msm/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/perfmon/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find kernel/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find mm/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find fs/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find ipc/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find security/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find crypto/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find block/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/lib/lib.a: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find lib/lib.a: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/lib/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find lib/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find drivers/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find sound/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find firmware/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find arch/arm/oprofile/built-in.o: Datei oder Verzeichnis nicht gefunden
/home/schnittenberg/cm/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi-ld: cannot find net/built-in.o: Datei oder Verzeichnis nicht gefunden
make[2]: *** [vmlinux.o] Fehler 1
make[1]: *** [sub-make] Fehler 2
make[1]: Verzeichnis »/home/schnittenberg/cm/kernel/sony/msm8974« wird verlassen
make: *** [TARGET_KERNEL_BINARIES] Fehler 2
make: Verzeichnis »/home/schnittenberg/cm« wird verlassen

EDIT:
  1. Kernel Ordner gelöscht
  2. erneutes Repo sync
  3. . build/envsetup.sh
  4. make -C kernel/sony/msm8974/configs/cm_rhine_amami_row_defconfig
  5. croot
  6. und jetzt aufpassen! => Build successfull..aber ganz ehrlich? Verstehen tue ich es (noch) nicht so ganz. Danke auf jeden fall für die Hilfe (fürs erste :) )
Euch allen ein schönes Wochenende
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: mratix
Gleich noch eine Fage hinterher.
Ich wollte mal einen Nexus 5 Build durchlaufen lassen um zu sehen ob es überhaupt durchläuft oder ob noch
andere Probleme sind. Da sollte doch dieses local_manifest reichen oder ?
Nexus da es unterstützt wird. Mein Huawei ja nicht ;)

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="CyanogenMod/android_device_qcom_common" path="device/qcom/common" remote="github" />
<project name="CyanogenMod/android_device_lge_hammerhead" path="device/lge/hammerhead" remote="github" />
<project name="CyanogenMod/android_kernel_lge_hammerhead" path="kernel/lge/hammerhead" remote="github" revision="cm-12.1" />
<project name="CyanogenMod/android_device_lge_hammerheadcaf" path="device/lge/hammerheadcaf" remote="github" />
<project name="TheMuppets/proprietary_vendor_lge" path="vendor/lge" remote="github" revision="cm-12.1"/>
</manifest>
 
ja das müsste passen bzw. das hammerhadcaf zeug solltest du eigentlich nicht brauchen

oder alterantiv sollte es auch reichen,nur das vendor zeug im local manifest anzulegen (oder ganz ohne und ./extract-files.sh in device/lge/hammerhead mit angestecktem telefon+ adb debugging an) und:
source build/envsetup.sh
breakfast hammerhead
 
  • Danke
Reaktionen: fromfuture
Dann macht er aber nicht wirklich viel ...

[blackball@mAchine system]$ source build/envsetup.sh
including device/generic/mini-emulator-x86/vendorsetup.sh
including device/generic/mini-emulator-arm64/vendorsetup.sh
including device/generic/mini-emulator-mips/vendorsetup.sh
including device/generic/mini-emulator-armv7-a-neon/vendorsetup.sh
including device/generic/mini-emulator-x86_64/vendorsetup.sh
including vendor/cm/vendorsetup.sh
including sdk/bash_completion/adb.bash
including vendor/cm/bash_completion/git.bash
including vendor/cm/bash_completion/repo.bash
[blackball@mAchine system]$ breakfast hammerhead
including vendor/cm/vendorsetup.sh
Trying dependencies-only mode on a non-existing device tree?

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=5.1.1
CM_VERSION=12.1-20151204-UNOFFICIAL-hammerhead
TARGET_PRODUCT=cm_hammerhead
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=krait
TARGET_2ND_ARCH=
TARGET_2ND_ARCH_VARIANT=
TARGET_2ND_CPU_VARIANT=
HOST_ARCH=x86_64
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.1.6-1-ARCH-x86_64-with-glibc2.2.5
HOST_BUILD_TYPE=release
BUILD_ID=LMY48Y
OUT_DIR=/home/blackball/Nexus/android/system/out
============================================

[blackball@mAchine system]$
 

Ähnliche Themen

cehuisken
  • cehuisken
Antworten
1
Aufrufe
883
Andy
Andy
D
Antworten
0
Aufrufe
2.520
Defier
D
E
Antworten
4
Aufrufe
2.204
Kardroid
Kardroid
Zurück
Oben Unten