J'ai pu créer une image Android pour mon Development Board en appliquant mon patch personnalisé au code AOSP. Les fichiers binaires générés (Say Version 1) fonctionnaient correctement. J'ai fait quelques changements à mon patch, construit la dernière image (Say Version 2). Cela fonctionne aussi bien.Erreur lors de la génération du package OTA incrémentiel Android
J'ai target_files respectifs pour ces versions en exécutant la commande dist
make dist
Ce qui a fonctionné
Lorsque je tente de générer package ota supplémentaire sur ma machine Linux (disons PC-1), le fichier ota.zip a été généré et fonctionne correctement.
./build/tools/releasetools/ota_from_target_files -i ./version1_target_file.zip ./version2_target_file.zip oat_file_version_1_to_2.zip
unzipping target target-files...
unzipping source target-files...
unable to load device-specific module; assuming none
Loading target...
Loading source...
2 diffs to compute
0.41 sec 316/ 307886 bytes ( 0.10%) system/etc/recovery-resource.dat
1.43 sec 1799/2521277 bytes ( 0.07%) system/priv-app/Calander.apk
building image from target_files BOOT...
building image from target_files BOOT...
building image from target_files RECOVERY...
building image from target_files RECOVERY...
boot target: 5414912 source: 5414912 diff: 1086759
boot image changed; including.
recovery image changed; including as patch from boot.
done.
Ce qui ne fonctionnait:
La même chose quand essayé dans un autre PC Linux (autre que PC-1), il y a une dépendance erreur faisant échouer mon script.
./build/tools/releasetools/ota_from_target_files -i ./version1_target_file.zip ./version2_target_file.zip oat_file_version_1_to_2.zip
unzipping target target-files...
unzipping source target-files...
unable to load device-specific module; assuming none
Loading target...
Loading source...
2 diffs to compute
[Errno 2] No such file or directory
Exception in thread Thread-2:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 919, in worker
d.ComputePatch()
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 879, in ComputePatch
p = Run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 68, in Run
return subprocess.Popen(args, **kwargs)
File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
[Errno 2] No such file or directory
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 919, in worker
d.ComputePatch()
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 879, in ComputePatch
p = Run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 68, in Run
return subprocess.Popen(args, **kwargs)
File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
building image from target_files BOOT...
Traceback (most recent call last):
File "./build/tools/releasetools/ota_from_target_files", line 914, in <module>
main(sys.argv[1:])
File "./build/tools/releasetools/ota_from_target_files", line 899, in main
WriteIncrementalOTAPackage(input_zip, source_zip, output_zip)
File "./build/tools/releasetools/ota_from_target_files", line 605, in WriteIncrementalOTAPackage
OPTIONS.source_info_dict)
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 344, in GetBootableImage
info_dict))
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 281, in BuildBootableImage
p1 = Run(cmd, stdout=subprocess.PIPE)
File "/home/ubuntu/otaPackageBuildTest/test/build/tools/releasetools/common.py", line 68, in Run
return subprocess.Popen(args, **kwargs)
File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
Question: Quels sont les paquets minimum requis pour générer un fichier ota supplémentaire sur un nouveau PC Linux?