今天在看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. 计蒜客NOIP模拟赛(2) D1T2 表演艺术

    凡和邻家男孩玩完了纸牌,兴致很高,于是准备了一场表演艺术对抗赛. 他特意请来了很多表演艺术家,分成绿黑两队,进行名为 PK,实则捞金的表演. 凡为了捞金,开设了一个赌局,在比赛开始之前招揽人们来押注谁 ...

  2. ●BZOJ 1006 [HNOI2008]神奇的国度(弦图最小染色数)○ZOJ 1015 Fishing Net

    ●赘述题目 给出一张弦图,求其最小染色数. ●题解 网上的唯一“文献”:<弦图与区间图>(cdq),可以学习学习.(有的看不懂) 摘录几个解决改题所需的知识点: ●子图和诱导子图(一定要弄 ...

  3. Codeforces Round #438 B. Race Against Time

    Description Have you ever tried to explain to the coordinator, why it is eight hours to the contest ...

  4. 习题9-5 UVA 242

    Stamps and Enovelope Size 题意: 给你最多贴S张邮票.有N个邮票集合,每个集合有不同的面值.问哪个集合的最大连续邮资最大,输出最大连续邮资和集合元素. 如果不止一个集合结果相 ...

  5. css3中-moz、-ms、-webkit各什么意思

    1.-moz代表firefox浏览器私有属性 2.-ms代表ie浏览器私有属性 3.-webkit代表safari.chrome私有属性 这些是为了兼容老版本的写法,比较新版本的浏览器都支持直接写:b ...

  6. Spring利用反射调用接口

    首先在项目中使用java反射调用 //根据实例及参数名获得方法A Method method = event.getObj().getClass() .getMethod(event.getMetho ...

  7. IOS JavaScriptCore介绍

    本文主要转自:https://www.jianshu.com/p/cdaf9bc3d65d http://blog.csdn.net/u011993697/article/details/515772 ...

  8. Eclipse 一直不停 building workspace完美解决总结

    一.产生这个问题的原因多种1.自动升级 2.未正确关闭  3.maven下载lib挂起 等.. 二.解决总结(1).解决方法        方法1.修改eclipse启动文件 eclipse.ini ...

  9. 3-学习GPRS_Air202(需要知道的关于Lua的一些基本的知识)

      http://www.cnblogs.com/yangfengwu/p/8948935.html 学东西一定是打破沙锅学到底,有问题就解决问题,不要试图去回避或者放弃解决当前的问题,如果总是回避或 ...

  10. C++重载输入流复习

    C++重载输入流 #include <bits/stdc++.h> using namespace std; struct Point { int x, y; Point(int xx, ...