今天在看MTK提供的SDK编译文档,按照步骤做,结果出错了,文档如下:

2- Building an SDK for MacOS and Linux
--------------------------------------

First, setup your development environment and get the Android source code from
git as explained here:

  http://source.android.com/source/download.html

For example for the cupcake branch:

  $ mkdir ~/my-android-git
  $ cd ~/my-android-git
  $ repo init -u https://android.googlesource.com/platform/manifest -b master -g all,-notdefault,tools
  $ repo sync

Then once you have all the source, simply build the SDK using:

  $ cd ~/my-android-git
  $ . build/envsetup.sh
  $ lunch sdk-eng          这个sdk-eng指的是对应的mtk版本
  $ make sdk

This will take a while, maybe between 20 minutes and several hours depending on
your machine. After a while you'll see this in the output:

  Package SDK: out/host/darwin-x86/sdk/android-sdk_eng.<build-id>_mac-x86.zip

Some options:

- Depending on your machine you can tell 'make' to build more things in
  parallel, e.g. if you have a dual core, use "make -j4 sdk" to build faster.

- You can define "BUILD_NUMBER" to control the build identifier that gets
  incorporated in the resulting archive. The default is to use your username.
  One suggestion is to include the date, e.g.:

  $ export BUILD_NUMBER=${USER}-`date +%Y%m%d-%H%M%S`

  There are certain characters you should avoid in the build number, typically
  everything that might confuse 'make' or your shell. So for example avoid
  punctuation and characters like $ & : / \ < > , and .

我直接按照上面的命令敲,结果发现出错,后来才知道,这里是sdk指的是对应的某某工程的名字,我这个工程名为

em_t8370_emmc,所以我的sdk名字就是em_t8370_emmc,看来文档有时会让人产生误解的啊,还好是老一辈的总工告诉了我,不然我还蒙在谷里呢!!今天总算知道了,呵呵呵。

然后,说说我遇到的问题和如何解决的方法吧:

1、按照源码中sdk目录下的howto_build_SDK.txt参考文档的编译方式
  $ cd ~/my-android-git
  $ . build/envsetup.sh
  $ lunch sdk-eng
  $ make sdk
 结果,产生错误log信息如下:
 device/mediatek/build/build/libs/custom.mk:159: PWD = /mnt/sdb1/yangyx/MT8127_M0_MP8_0407
 device/mediatek/build/build/libs/custom.mk:160: *** Can not find ProjectConfig.mk , MTK_PROJECT_CONFIGS = .  Stop.

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

2、根据一些参考资料,我解决以上相关问题采用以下步骤:
	source build/envsetup
	lunch em_t8370_emmc-user
	source build/envsetup    #需要重新source一次,我也不知道为什么,如果不重新再执行这句话,编译还是会产生像上面一样的问题。
	make sdk
	结果,产生的错误log信息如下:
	Package SDK: out/host/linux-x86/sdk/em_t8370_emmc/android-sdk_1476082019_linux-x86.zip
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libexif.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libext2_blkid.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libext2_com_err.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libext2_e2p.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libext2_profile.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libext2_quota.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libext2_uuid.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libext2fs.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libiprouteutil.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libnetlink.so
	SDK: warning: including GNU target out/target/product/em_t8370_emmc/system/lib/libnl.so
	development/build/sdk.atree:49: couldn't locate source file: bin/etc1tool
	development/build/sdk.atree:88: couldn't locate source file: bin/split-select
	development/build/sdk.atree:93: couldn't locate source file: bin/bcc_compat
	development/build/sdk.atree:186: couldn't locate source file: framework/layoutlib.jar
	development/build/sdk.atree:525: couldn't locate source file: framework/layoutlib-tests.jar
	development/build/sdk.atree:526: couldn't locate source file: system/app/EmulatorSmokeTests/EmulatorSmokeTests.apk
	make: *** [out/host/linux-x86/sdk/em_t8370_emmc/android-sdk_1476082019_linux-x86.zip] Error 44

3、注释以上sdk.atress 49 88 93 186 525 526 相关的脚本
   编译成功,在相关目录下生成以下的文件:
   Package SDK: out/host/darwin-x86/sdk/android-sdk_eng.<build-id>_mac-x86.zip
   生成的android.jar是最新的:
   /out/host/linux-x86/sdk/em_t8370_emmc/android-sdk_1476083189_linux-x86/platforms/android-6.0/android.jar

关于MT8127中sdk的编译出错问题的更多相关文章

  1. 在switch中的case语句中声明变量编译出错的解决方案

    在switch中的case语句中声明变量编译的问题 先来看段代码,别管什么意思: : , j = ; ; i < ; i++) recive_phone[i] = msgbuf.text[i]; ...

  2. 深度学习-Caffe中启用MatlabSupport编译出错的解决方案

    一.如果编译前打算生成支持Matlab的库,则设置MatlabSupport为true之后. 二.记得添加Matlab的安装路径.我的是:D:\Application\DevTools\Matlab ...

  3. iOS中的预编译指令的初步探究

    目录 文件包含 #include #include_next #import 宏定义 #define #undef 条件编译 #if #else #endif #if define #ifdef #i ...

  4. Android Studio2.1.2 Java8环境下引用Java Library编译出错

    转载请注明出处:http://www.cnblogs.com/LT5505/p/5685242.html 问题:在Android Studio2.1.2+Java8的环境下,引用Java Librar ...

  5. protobuf编译出错的解决方案(iOS,OSX)

    protobuf 最近使用protobuf,变编译工具时遇上一点问题.现在附上解决方案 编译过程 完全参照 https://github.com/alexeyxo/protobuf-objc 编译出错 ...

  6. Spark入门实战系列--2.Spark编译与部署(中)--Hadoop编译安装

    [注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 .编译Hadooop 1.1 搭建环境 1.1.1 安装并设置maven 1. 下载mave ...

  7. C中的预编译宏定义

     可以用宏判断是否为ARC环境 #if _has_feature(objc_arc) #else //MRC #endif C中的预编译宏定义 -- 作者: infobillows 来源:网络 在将一 ...

  8. C/C++中的预编译指令

    工作中遇到的: 一个头文件中的: #pragma warning(disable:4996)#pragma warning(disable:4244)#pragma warning(disable:4 ...

  9. Weblogic jsp页面编译出错,Weblogic jsp编译异常

    Weblogic jsp页面编译出错,Weblogic jsp编译异常 ======================== 蕃薯耀 2018年1月29日 http://www.cnblogs.com/f ...

随机推荐

  1. hdu 5750 Dertouzos 素数

    Dertouzos Time Limit: 7000/3500 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total ...

  2. 【USACO15FEB】审查(黄金)Censoring (Gold)

    题目描述 Farmer John has purchased a subscription to Good Hooveskeeping magazine for his cows, so they h ...

  3. gift 分数规划的最大权闭合子图

    题目大意: N个物品,物品间有M组关系,每个物品有一个ai的代价,满足关系后会得到bi的值 求 max(sigma(bi)/sigma(ai)) 题解: 很明显的最大权闭合子图,只不过需要处理分数. ...

  4. hdu 5479(括号问题)

    题意:类似"()","(())","()()" 是匹配的, 而 "((", ")(", " ...

  5. spring+hibernate+struts2零配置整合

    说句实话,很久都没使用SSH开发项目了,但是出于各种原因,再次记录一下整合方式,纯注解零配置. 一.前期准备工作 gradle配置文件: group 'com.bdqn.lyrk.ssh.study' ...

  6. Linux配置服务器的一点总结

    一.Linux初始化服务 首先搞清楚四个概念: 进程:正在运行的程序,有自己独立的内存空间. 线程:是进程的下属单位,开销较进程小,没有自己独立的内存空间. 作业:由一系列进程组成,来完成某一项任务. ...

  7. python安装pip以及导入第三方包

    python有着强大的第三方库,数量很多且功能强大. 最原始的办法是在官网上下载压缩包,解压,然后运行setup.py来进行安装. 显然这种方法很繁琐,不方便.因此有了包管理工具. pip是一个包管理 ...

  8. VMWare 学习目录

    Linux介绍 Linux入门--个人感想 Google怎么用linux 初入Linux Windows XP硬盘安装Ubuntu 12.04双系统图文详解 实例讲解虚拟机3种网络模式(桥接.nat. ...

  9. drools 手动创建kmoudle.xml文件

    @Test public void test() { KieServices kieServices = KieServices.Factory.get(); KieResources resourc ...

  10. C#系统之垃圾回收

    1. using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syste ...