整理一些Build Android 所遇到的問題
Reference:
Howto Build Android KitKat (4.4) for the Google Nexus 5
Android Download and Building
Android 源码编译及常见错误及解决方法
- Import includes file: out/host/linux-x86/obj/EXECUTABLES/validatekeymaps_intermediates/import_includes
- host C++: libinput <= frameworks/native/libs/input/Input.cpp
- host C++: libinput <= frameworks/native/libs/input/InputDevice.cpp
- /home/lost/android/android4.4.2/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6/bin/../lib/gcc/i686-linux/4.6.x-google/../../../../i686-linux/bin/as/home/lost/android/android4.4.2/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6/bin/../lib/gcc/i686-linux/4.6.x-google/../../../../i686-linux/bin/as: : error while loading shared librarieserror while loading shared libraries: : libz.so.1libz.so.1: : cannot open shared object filecannot open shared object file: : No such file or directoryNo such file or directory
- make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libinput_intermediates/Input.o] error 1
- make: *** 正在等待未完成的任务....
- make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libinput_intermediates/InputDevice.o] error 1
Answer:
- root@lost:/usr/bin# apt-get install apt-file
- root@lost:/usr/bin# apt-file update
- root@lost:/usr/bin# apt-file search libz.so.1
- lib32z1: /usr/lib32/libz.so.1
- lib32z1: /usr/lib32/libz.so.1.2.3.4
- zlib1g: /lib/x86_64-linux-gnu/libz.so.1
- zlib1g: /lib/x86_64-linux-gnu/libz.so.1.2.3.4
- zlib1g-dbg: /usr/lib/debug/lib/libz.so.1.2.3.4
- zlib1g-dbg: /usr/lib/debug/lib/x86_64-linux-gnu/libz.so.1.2.3.4
- zlib1g-dbg: /usr/lib/debug/usr/lib32/libz.so.1.2.3.4
- root@lost:/usr/bin# apt-get install lib32z1
2.
- /bin/bash: flex: command not found
- out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp: In function ‘int yyparse()’:
- out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp:1827: warning: deprecated conversion from string constant to ‘char*’
- out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp:1970: warning: deprecated conversion from string constant to ‘char*’
- Lex: aidl <= frameworks/base/tools/aidl/aidl_language_l.l
- /bin/bash: flex: command not found
- make: *** [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_l.cpp] Error 127
Answer:
- sudo apt-get install flex
將Android燒錄至SD Card
- 步驟:
- 重新配置SD Card(SD Configuration)
- 首先需要知道SD Card的名字
- $ sudo fdisk -ls
- 如果是8G的 SD card Disk /dev/sde: 8011 MByte, 8011120640 Byte ,名字就是 /dev/sde
- 將SD Card做分割及格式化,先去下載 omap3-mkcard.sh 並存在Downloads資料夾
- $ chmod 777 omap3-mkcard.sh
- $ sudo ./omap3-mkcard.sh /dev/sd<x>
- fdisk -c=dos -u=cylinders <drive>
Build 佐臻 touch pannel
- 步驟:
- 修改Linux Kernel Source
- 編輯drivers/hid/hid-ids.h
- 尋找下面的程式碼
- #define USB_DEVICE_ID_ILITEK_MULTITOUCH 0x0001
- 修改成
- #define USB_DEVICE_ID_ILITEK_MULTITOUCH 0x001c
- config kernel,選取CONFIG_HID_MULTITOUCH,重新Build kernel
- make -j$(egrep '^processor' /proc/cpuinfo | wc -l) CONFIG_HID_MULTITOUCH=y ARCH=arm uImage 2>&1 |tee ${MYDROID}/logs/kernel_make.out
沒有留言:
張貼留言