(注意要确定安装了jdk)

第一步: cd  lichee; ./build.sh  -p sun5i_elite -k 3.0  (apt-get install uboot-mkimage需要安装mkimage工具)

第二步: cd  android; source build/envsetup.sh

第三步:  root@QinQi:/work/shenbao-new/wifi_DDR128X16_shenbao/android# lunch

You're building on Linux

Lunch menu... pick a combo:
     1. full-eng
     2. full_x86-eng
     3. vbox_x86-eng
     4. full_stingray-userdebug
     5. full_wingray-userdebug
     6. full_crespo4g-userdebug
     7. full_crespo-userdebug
     8. full_maguro-userdebug
     9. full_toro-userdebug
     10. full_tuna-userdebug
     11. apollo_mele-eng
     12. apollo_tvdevb-eng
     13. crane_evb_v12r-eng
     14. crane_evb-eng
     15. crane_m1003h6-eng
     16. elite_evb-eng
     17. elite_nm307_v11-eng
     18. elite_nm307-eng
     19. nuclear_12_evb-eng
     20. nuclear_evb-eng
     21. full_panda-eng

Which would you like? [full-eng] 17

第四步:android# extract-bsp

第五步:make  -j8
1)编译报错
<command-line>:0:0: error: "_FORTIFY_SOURCE" redefined [-Werror]
<built-in>:0:0: note: this is the location of the previous definition
cc1plus: all warnings being treated as errors
cc1plus: all warnings being treated as errors
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libRS_intermediates/rsAdapter.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libRS_intermediates/rsAllocation.o] Error 1

解决:
修改build/core/combo/HOST_linux-x86.mk61行,将
HOST_GLOBAL_CFLAGS+= -D_FORTIFY_SOURCE=0
修改成
HOST_GLOBAL_CFLAGS+= -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0

2)编译报错
/bin/bash: jar: command not found 
其实就是jar这个命令在系统变量里找不到
解决办法:
cd /usr/bin 
sudo ln -s -f /usr/lib/jvm/jdk1.6.0_26/bin/jar
jdk安装目录按自己实际情况更改
如果提示javah:commond not found,于是照葫芦画瓢,输入命令
cd /usr/bin 
ln -s -f /usr/lib/jvm/jdk1.6.0_26/bin/javah 
如果提示javah:commond not found,于是照葫芦画瓢,输入命令
cd /usr/bin
ln -s -f /usr/lib/jvm/java/jdk1.6.0_26/bin/javah
在编译sdk时,如果提示javadoc:commond not found,
cd /usr/bin
ln -s -f /usr/lib/jvm/java/jdk1.6.0_26/bin/javadoc

3)编译报错
sh: gperf: not found
calling gperf failed: 32512 at ./makeprop.pl line 140.
方法:sudo apt-get install gperf

4)编译报错
vim system/core/init/logo.c 修改

cp   ./device/softwinner/common/hardware/include/drv_display_sun4i.h      bionic/libc/include/

5)编译报错
arm-linux-androideabi-g++: ./frameworks/base/media/CedarX-Projects/CedarX/../CedarAndroidLib/LIB_ICS_/libstagefright_httplive_opt.a: No such file or directory
修改
cp  -rf ./frameworks/base/media/CedarX-Projects/CedarAndroidLib/LIB_ICS_F23/ ./frameworks/base/media/CedarX-Projects/CedarAndroidLib/LIB_ICS_

frameworks/compile/slang/slang_rs_export_foreach.cpp:249:23: error: variable 'ParamName' set but not used [-Werror=unused-but-set-variable 
修改
vi frameworks/compile/slang/Android.mk
local_cflags_for_slang := -Wno-sign-promo -Wall -Wno-unused-parameter

6)编译报错
home/yanfa/workspace/Android/shenbao-new/wifi_DDR128X16_shenbao/android/external/llvm/lib/Support/Mutex.cpp:69: undefined reference to `pthread_mutexattr_init'
/home/yanfa/workspace/Android/shenbao-new/wifi_DDR128X16_shenbao/android/external/llvm/lib/Support/Mutex.cpp:75: undefined reference to `pthread_mutexattr_settype'
/home/yanfa/workspace/Android/shenbao-new/wifi_DDR128X16_shenbao/android/external/llvm/lib/Support/Mutex.cpp:80: undefined reference to `pthread_mutexattr_setpshared'
/home/yanfa/workspace/Android/shenbao-new/wifi_DDR128X16_shenbao/android/external/llvm/lib/Support/Mutex.cpp:89: undefined reference to `pthread_mutexattr_destroy'
out/host/linux-x86/obj/STATIC_LIBRARIES/libLLVMSupport_intermediates/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::tryacquire()':
/home/yanfa/workspace/Android/shenbao-new/wifi_DDR128X16_shenbao/android/external/llvm/lib/Support/Mutex.cpp:143: undefined reference to `pthread_mutex_trylock'
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/EXECUTABLES/test-librsloader_intermediates/test-librsloader] Error 1
修改
vi external/llvm/llvm-host-build.mk 添加
LOCAL_LDLIBS := -lpthread -ldl

make: ***  [out/host/linux-x86/obj/STATIC_LIBRARIES/libgtest_host_intermediates/gtest-all.o] Error 1
修改:  vim external/gtest/include/gtest/internal/gtest-param-util.h 添加:
#include <cstddef>

make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libMesa_intermediates/src/glsl/linker.o] Error 1
修改vim?external/mesa3d/src/glsl/linker.cpp?添加:

#include?<cstddef>

7)编译报错
In file included from external/oprofile/libpp/arrange_profiles.cpp:24:0:
external/oprofile/libpp/format_output.h:94:22: error: reference ‘counts’ cannot be declared ‘mutable’ [-fpermissive]
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/liboprofile_pp_intermediates/arrange_profiles.o] Error 1
解决办法:
external/oprofile/libpp/format_output.h把:mutable counts_t & counts;
改为:counts_t & counts;

Copy: out/host/linux-x86/usr/share/zoneinfo/zoneinfo.idx
Copy: out/host/linux-x86/usr/share/zoneinfo/zoneinfo.version
target Prebuilt:  (out/target/product/generic/system/bin/monkey)
target thumb C++: gatord <= system/core/gator-daemon/ConfigurationXML.cpp
target thumb C++: gatord <= system/core/gator-daemon/StreamlineSetup.cpp
target Executable: gatord (out/target/product/generic/obj/EXECUTABLES/gatord_intermediates/LINKED/gatord)
target Symbolic: gatord (out/target/product/generic/symbols/system/bin/gatord)
target Strip: gatord (out/target/product/generic/obj/EXECUTABLES/gatord_intermediates/gatord)
target thumb C++: camera. <= device/softwinner/common/hardware/camera/PreviewWindow.cpp
device/softwinner/common/hardware/camera/PreviewWindow.cpp:32:31: error: drv_display_sun5i.h: No such file or directory
make: *** [out/target/product/generic/obj/SHARED_LIBRARIES/camera._intermediates/PreviewWindow.o] Error 1
root@ubuntu:/home/yanfa/workspace/Android/android_sdk/shenbao-new/wifi_DDR128X16_shenbao/android#
修改:
vim device/softwinner/common/hardware/camera/Android.mk

LOCAL_C_INCLUDES +=                                 \
38     external/jpeg                                   \
39     external/skia/include/core/                     \
40     frameworks/base/core/jni/android/graphics       \
41     frameworks/base/include/media/stagefright/openmax \
42     $(TOP)/frameworks/base/media/CedarX-Projects/CedarX/include/include_camera \
43     hardware/libhardware/include/hardware \
44     external/neven/FaceRecEm/common/src/b_FDSDK     \
45     device/softwinner/common/hardware/include      \ #add
46     $(TARGET_HARDWARE_INCLUDE)

v4l2_pix_size

8)

第六步:pack

android编译遇到问题修改的更多相关文章

  1. react-native android/ios 根据配置文件编译时自动修改版本号

    开发react-native时大都有过这个操作,当版本迭代时候要修改app版本号时,一般都这样做 Android: 的要修改build.gradle文件的versionName ios: 打开xcod ...

  2. 【Android】MTK Android 编译命令

    命令格式:./maketek [option] [project] [action] [modules] Option: -t ,-tee :输出log信息到当前终端 -o , -opt=-- : 编 ...

  3. Android——编译release版签名系统

    http://blog.csdn.net/jscese/article/details/24243171 在我的第一篇博客里面http://blog.csdn.net/jscese/article/d ...

  4. 转: 加快Android编译速度

    转: http://timeszoro.xyz/2015/11/25/%E5%8A%A0%E5%BF%ABandroid%E7%BC%96%E8%AF%91%E9%80%9F%E5%BA%A6/ 加快 ...

  5. android编译openssl静态库.a

    github上有一个开源项目,已经为你编译openssl建好了工程. 地址:https://github.com/aluvalasuman/OpenSSL1.0.1cForAndroid 选择需要的版 ...

  6. [Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程

    本文转载自:[Android 编译(一)] Ubuntu 16.04 LTS 成功编译 Android 6.0 源码教程 1 前言 经过3天奋战,终于在Ubuntu 16.04上把Android 6. ...

  7. Android编译环境配置

    Android编译环境配置 网上关于Android编译环境配置的整理资料有不少,经整理亲测后,希望能给需要的亲们提供帮助. 主要分为四步: 1.安装JDK(Java Standard Edition ...

  8. 将linux和uboot集成到Android编译框架中

    span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }.CodeMirror ...

  9. 为 Android 编译并集成 FFmpeg 的尝试与踩坑

    前言与环境说明 随着 FFmpeg.NDK 与 Android Studio 的不断迭代,本文可能也会像我参考过的过期文章一样失效(很遗憾),但希望本文中提到的问题排查以及步骤说明能够帮到你,如果发现 ...

随机推荐

  1. SQL server游标基本结构

    简单游标遍历数据: BEGIN DECLARE QZ_cursor CURSOR SCROLL FOR /*创建游标*/ SELECT NAME FROM USERINFO/*要遍历的数据*/ OPE ...

  2. Codeforces Round #265 (Div. 1)

    D. World of Darkraft - 2 time limit per test 2 seconds memory limit per test 256 megabytes input sta ...

  3. POJ 2359 Questions

    Questions Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 1228   Accepted: 449 Descript ...

  4. nginx的报错500

    500:服务器内部错误,也就是服务器遇到意外情况,而无法履行请求. 500错误一般有几种情况: 1. web脚本错误,如php语法错误,lua语法错误等. 2. 访问量大的时候,由于系统资源限制,而不 ...

  5. excel截取某个字符之前的值

    1.find为查找函数,返回字符的位置,语法find(查找字符,被查字符或者单元格) 找到第一个-位置 2.left,字符截取函数,从左边开始,left(被截取的字符,个数)

  6. Python之FTP传输

    访问FTP,无非两件事情:upload和download,最近在项目中需要从ftp下载大量文件,然后我就试着去实验自己的ftp操作类,如下(PS:此段有问题,别复制使用,可以参考去试验自己的ftp类! ...

  7. 【边双连通】poj 3352 Road Construction

    http://poj.org/problem?id=3352 [题意] 给定一个连通的无向图,求最少加多少条边使得这个图变成边双连通图 [AC] //#include<bits/stdc++.h ...

  8. K-th Number(poj 2104)

    题意:静态第K大 #include<cstdio> #include<iostream> #include<cstring> #define N 200010 #d ...

  9. 理解 virbr0

    virbr0 是 KVM 默认创建的一个 Bridge,其作用是为连接其上的虚机网卡提供 NAT 访问外网的功能. virbr0 默认分配了一个IP 192.168.122.1,并为连接其上的其他虚拟 ...

  10. msp430项目编程40

    msp430综合项目---多路温度检测系统40