Haisi3716 -- android sdk adt 编译

最近 在使用海思3716C开发版。我在编译的时候 sdk ,adt遇到的问题,如下:

 

我的环境是:ubuntu10.04

 

注:使用一下命令前,记得先执行 envsetup.sh脚本。

 

1 编译sdk

source build/envsetup.sh   //是该设置编译环境

tapas<tapas.in   //选择 硬件平台,其实 tapas 就可以完成设置, tapas.in 应该是系统默认设置,选择His3716 就可以了,要是编译emulator 是问题。

编译命令

make sdk


变过成中有个注意 link出错 我把注释删除 就编译通过了


网上也有说用 make PRODUCT-sdk-sdk 编译,我试了下 编译出错,应该是 所选的平台不支持。

 

2 编译adt

先下载一个Eclispe 3.4 Ganymede jee,版本不对的话,后面会遇到问题了,请小心。

启动一下Eclipse,第一次启动它可能会生成一些文件的。

设置一下环境变量 export ECLIPSE_HOME=XXX, XXX是eclipse的根目录,如果没有这个命令,编译工具会试图从网上给你下一个,很慢。

新建一个文件夹放编译结果 mkdir adt

敲以下命令开始编译:

        $ development/tools/eclipse/scripts/build_server.sh /home/peipei/adt

注意目标文件夹一定要写绝对路径,否则会报错。

 

 

遇到的问题:

 

1 现象:和标准的SDK 目录机构不一样。


我自己 使用 make sdk 可以编译通过,但编译生成的sdk 目录  在android-sdk_eng.root_linux-x86目录下有add-ons、documentation.html、RELEASE_NOTES.html、 tools、docs、 platforms、samples文件,但缺少了platform-tools请问为什么会缺少了platform-tools,应该怎么样编译呢,如果缺少了他,那在搭建开发环境时会出错。


网上说:在window-->Android SDK and AVD Manager 下安装Android SDK Platform-tools,revision 1 就行了,自己试了还是不行。


但是 使用 make PRODUCT-sdk-sdk 出错误


/tmp/ccQs63Hu.s:587: Error: selected processor does not support `smull ip,r4,r3,r4'
/tmp/ccQs63Hu.s:730: Error: selected processor does not support `smull ip,r1,r3,r1'
/tmp/ccQs63Hu.s:749: Error: selected processor does not support `smull ip,r4,r3,r4'
/tmp/ccQs63Hu.s:1132: Error: selected processor does not support `smull r6,r1,r3,r1'


类似于 以上错误,还没有解决。


解决方法:


其实这个不能说是个问题,编译出来的 plantoms-tools 是没有 但是 其中的adb 都是在plantoms文件夹下,只要编译出对应的ADT,就能使用该看似不完整的sdk,下面看下ADT的编译。


2现象:编译adt的时候报错:

Installation Error: Eclipse build file org.eclipse.pde.build_.../scripts/build.xml  not detected. Found ''. Aborting.

原因:

是Eclipse版本不对,请参考http://androidn.wokoko.com/bbs/viewthread.php?tid=845。

解决办法:


编译ADT编译过程中出现了这个错误,删除  ECLIPSE_HOME环境变量的设置,让程序自己去下载eclipse.

看,我下载了一晚上 结果还是失败,无奈还是自己下载 eclpse3.4 jee 版本把,这里给出地址:

http://www.eclipse.org/downloads/packages/release/ganymede/r 

下载这个 

Eclipse IDE for Java EE Developers 版本的。


下载后设置 ECLIPSE_HOME环境变量。

在源代码目录 使用 find ./ -name build_server.sh

查找出该文件的位置,执行 build_server.sh (ADT存放的目录)/home/ADT

就可以生成对应当前版本的ADT,进测试我使用编译出来的ADT 、sdk 在其它版本的Eclipse版本上配置成功。


tapas 选择Hai3716编译成功,但是 编写的程序只有在开发版上调试,为了调试方便我想编译个一个 模拟器 版本sdk,公司大牛估计编译emulator 版本后,海思加入的库都会无法时使用,我尝试了下, 选择emulaor 无法通过编译。

很令人失望,我用的haisi提供的源代码,因为海思板子 加入了自己的驱动,但这些在模拟环境下是不会编译的,所以我没有实现

海思 平台模拟开发环境的搭建。

只知道 2个文件在做平台配置

source build/envsetup.sh
tapas<tapas.in

tapas命令 就是选择 模拟平台 还是 Hi3716 平台。 EM

 

源代码目录:build/target/board

 

下面有:emulator 模拟器

           generic 通用的

           Haisi3716 海思 添加了东西

           sim 最简单的


----------------------------------------------------------------------------下面是网上说的有一个可能遇到的错,我到没遇到  ------------------------------------------------------------------------------

 

3 现象::往模拟器sdcard push文件的时候,报错:read only。

原因:

参考:http://blog.chinaunix.net/u3/90973/showart_2178533.html

解决办法:

 

Android 在 cupcake 和 donut 分支仿真器启动后一般都会有 SD Card Read-Only 问题。这个问题并不是说 SDCard 属性为只读。这种情况实际上是 SDCard 根本就没有加载成功。在 cupcake 前的 1.0 版本中采用 mount.conf 对 SDcard 进行 mount , cupcake 之后就用 vold.conf 替代了 mountd.conf


方法1:使用vold.conf
在 ~/android/build/core/main.mk 文件中加入如下一段话 
################################################################################
# Install a vold.conf file is one's not already being installed.
ifeq (,$(filter %:system/etc/vold.conf, $(PRODUCT_COPY_FILES)))
PRODUCT_COPY_FILES += /
       development/data/etc/vold.conf:system/etc/vold.conf
ifeq ($(filter eng tests,$(TARGET_BUILD_VARIANT)),)
    $(warning implicitly installing vold.conf)
endif
endif
##################################################################################
然后重新
make
make sdk

方法2:使用mountd.conf
编译mountd,并在文件系统中启动这一服务。(cupcake donut 分支下载时在system/core中并没有mountd目录而在源码树中有,这种情况需自行手动下载 )

   修改 system/core/mountd/Android.mk文件,开放最后一行

    # disabled - we are using vold now instead
    # include $(BUILD_EXECUTABLE)
    为:

    # disabled - we are using vold now instead
    include $(BUILD_EXECUTABLE)

然后 make mountd

    增加 安装mountd.conf 文件

      修改 system/core/rootdir/init.rc文件

   释放下两行:

     service mountd /system/bin/mountd
          socket mountd stream 0660 root mount


    修改  system/core/rootdir/Android.mk 文件, 增加 etc/mountd.conf /,如下:

 

    copy_from := /
       etc/dbus.conf /
       etc/init.goldfish.sh /
       etc/mountd.conf /
       etc/hosts

 

我试过他的方法1,可以的。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前 言 .................................................................................................................................................. i 1 产品概述 ......................................................................................................................................... 1 1.1 应用场景 ........................................................................................................................................................ 1 1.2 架构 ................................................................................................................................................................ 1 1.2.2 主控处理器 .......................................................................................................................................... 2 1.2.3 安全处理 .............................................................................................................................................. 2 1.2.4 存储器接口 .......................................................................................................................................... 2 1.2.5 数据流接口 .......................................................................................................................................... 3 1.2.6 视频解码器 .......................................................................................................................................... 4 1.2.7 图形和显示处理 ................................................................................................................................... 4 1.2.8 音视频接口 .......................................................................................................................................... 5 1.2.9 外设接口 .............................................................................................................................................. 5 2 启动模式 ......................................................................................................................................... 7 3 地址空间映射................................................................................................................................. 8 4 焊接工艺建议............................................................................................................................... 11 4.1 概述 .............................................................................................................................................................. 11

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值