制作ota包时,执行命令make otapackage或者make dist出现如下错误信息
Creating filesystem with parameters:
Size: 805306368
Block size: 4096
Blocks per group: 32768
Inodes per group: 8192
Inode size: 256
Journal blocks: 3072
Label:
Blocks: 196608
Block groups: 6
Reserved block group size: 47
Created filesystem with 1591/49152 inodes and 104770/196608 blocks
+ '[' 0 -ne 0 ']'
Running: simg2img /tmp/tmpQoC8v6 /tmp/unsparse_tmpQoC8v6
Running: e2fsck -f -n /tmp/unsparse_tmpQoC8v6
e2fsck 1.41.14 (22-Dec-2010)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/tmp/unsparse_tmpQoC8v6: 1591/49152 files (0.0% non-contiguous), 104770/196608 blocks
system size (418093060) is 51.92% of limit (805306368)
building image from target_files BOOT...
running: mkbootfs -f /tmp/targetfiles-4vdLGp/META/boot_filesystem_config.txt /tmp/targetfiles-4vdLGp/BOOT/RAMDISK
running: minigzip
running: mkbootimg --kernel /tmp/targetfiles-4vdLGp/BOOT/kernel --base 0x40000000 --ramdisk /tmp/tmp0ayaet --output /tmp/tmpoQgFo_
building image from target_files RECOVERY...
running: mkbootfs -f /tmp/targetfiles-4vdLGp/META/recovery_filesystem_config.txt /tmp/targetfiles-4vdLGp/RECOVERY/RAMDISK
running: minigzip
running: mkbootimg --kernel /tmp/targetfiles-4vdLGp/RECOVERY/kernel --base 0x40000000 --ramdisk /tmp/tmpvZFzfo --output /tmp/tmp_6uj6P
running: imgdiff -b /tmp/targetfiles-4vdLGp/SYSTEM/etc/recovery-resource.dat /tmp/tmpcQOOfd /tmp/tmpw2MqXH /tmp/tmpKTXg7B
cleaning up...
done.
Dist: out/dist/astar_evb20-img-20160623.zip
Traceback (most recent call last):
File "./build/tools/releasetools/ota_from_target_files", line 984, in <module>
main(sys.argv[1:])
File "./build/tools/releasetools/ota_from_target_files", line 952, in main
WriteFullOTAPackage(input_zip, output_zip)
File "./build/tools/releasetools/ota_from_target_files", line 458, in WriteFullOTAPackage
Item.Get("system").SetPermissions(script)
File "./build/tools/releasetools/ota_from_target_files", line 294, in SetPermissions
recurse(self, (-1, -1, -1, -1, None, None))
File "./build/tools/releasetools/ota_from_target_files", line 286, in recurse
recurse(i, current)
File "./build/tools/releasetools/ota_from_target_files", line 286, in recurse
recurse(i, current)
File "./build/tools/releasetools/ota_from_target_files", line 292, in recurse
item.mode, item.selabel, item.capabilities)
File "/home/usmart/src_R16/android/build/tools/releasetools/edify_generator.py", line 235, in SetPermissions
'"capabilities", %s' % (fn, uid, gid, mode, capabilities)
TypeError: %d format: a number is required, not NoneType
make: *** [out/target/product/astar-evb20/astar_evb20-ota-20160623.zip] 错误 1
原因是有些带中文符号的文件编译进系统了,把所有带中文字符的文件改成英文字符即可。