zoukankan      html  css  js  c++  java
  • (NOT OK) How To Build CyanogenMod Android for Motorola Defy ("jordan")



    yum install java-devel
    yum install java-1.6.0-openjdk-devel
    updatedb
    locate javac

    # dd if=/dev/zero of=/run/media/root/Elements/ztguang/android.iso bs=1M count=112640
    # mkfs.ext4 /run/media/root/Elements/ztguang/android.iso
    # mount /run/media/root/Elements/ztguang/android.iso /mnt/iso

    # mkdir -p /mnt/iso/android-source/android/system
    # cd /mnt/iso/android-source/android/system

    -----------------------------------------------
    [root@localhost system]# gedit .repo/manifests/default.xml
               fetch="https://android.googlesource.com"
    改为
               fetch="https://aosp.tuna.tsinghua.edu.cn/"

               fetch="git://aosp.tuna.tsinghua.edu.cn/aosp/"
    -----------------------------------------------
    [root@localhost system]# gedit /bin/repo

    REPO_URL = 'git://aosp.tuna.tsinghua.edu.cn/aosp/'
    -----------------------------------------------

    # repo init -u git://github.com/CyanogenMod/android.git -b gingerbread
    # repo sync -j16; while [ $? = 1 ]; do sleep 1; repo sync -j16; done

    # cd vendor/cyanogen
    # ./get-rommanager                //Once completed, this does not need to be done again.

    # cd /mnt/iso/android-source/android/system
    # source build/envsetup.sh
    # lunch        or        # lunch cm_jordan-userdebug        or        # lunch full_jordan-userdebug

    # cd device/motorola/jordan
    # ./extract-files.sh        //Now ensure that your Defy is connected to your computer via the USB cable

    # cd -
    # export USE_CCACHE=1
    # prebuilt/linux-x86/ccache/ccache -M 50G

    # export PATH=/usr/lib/jvm/java-1.6.0-openjdk.x86_64/bin/:$PATH

    # croot
    # brunch jordan

    -----------------------------------------------没有/mnt/iso/android-source/android/system/device/motorola/jordan文件夹的解决方法
    在    https://github.com/CyanogenMod
    搜索(filters)  android_device_motorola_jordan
    下载得到 android_device_motorola_jordan-gb-release-7.2.zip,然后,解压,内容复制到 device/motorola/jordan中

    单独 clone jordan
    [root@localhost tmp]# git init
    [root@localhost tmp]# git clone https://github.com/CyanogenMod/android_device_motorola_jordan.git

    -----------------------------------------------
    target Prebuilt: gdbserver (out/target/product/jordan/obj/EXECUTABLES/gdbserver_intermediates/gdbserver)
    make: *** 没有规则可以创建“out/target/product/jordan/obj/lib/libaudio.so”需要的目标“vendor/motorola/jordan/proprietary/lib/libaudio.so”。 停止。
    make: *** 正在等待未完成的任务....

    解决方法:
    下载 libaudio.so (搜索关键字:jordan libaudio.so)        到    /opt/tools/
    [root@localhost system]# cp /opt/tools/libaudio.so vendor/motorola/jordan/proprietary/lib/
    [root@localhost system]# cp /opt/tools/libaudio.so out/target/product/jordan/system/lib/

    -----------------------------------------------
    修改 .repo/manifests.git/config,将
        url = git://github.com/CyanogenMod/android.git
    更改为
        url = git://aosp.tuna.tsinghua.edu.cn/aosp/platform/manifest
        # 或 url = https://aosp.tuna.tsinghua.edu.cn/platform/manifest
    这个方法也可以用来在同步 Cyanogenmod 代码的时候从 TUNA 同步部分代码


    -----------------------------------------------如下尝试,若不行,则还原
    [root@localhost motorola]# ls
    common  jordan  jordan-common
    [root@localhost motorola]# mv jordan jordan.bac
    [root@localhost motorola]# cp -a jordan-common/ jordan
    [root@localhost motorola]# cd jordan
    [root@localhost jordan]# mv jordan-common-blobs.mk jordan-blobs.mk
    [root@localhost jordan]# mv jordan-common.mk jordan.mk

    -----------------------------------------------
    error: Cannot fetch CyanogenMod/android external svox.
    error: Cannot fetch CyanogenMod/android hardware ti wpan.

    [root@localhost system]# gedit .repo/manifests/default.xml

               fetch="https://aosp.tuna.tsinghua.edu.cn/"
    改为
               fetch="https://android.googlesource.com"

    删除line129,  <project path="external/svox" name="CyanogenMod/android_external_svox" />
    删除line162,  <project path="hardware/ti/wpan" name="CyanogenMod/android_hardware_ti_wpan" />

    添加:
      <project path="device/motorola/jordan" name="CyanogenMod/android_device_motorola_jordan" />
    -----------------------------------------------
    Your version is: java version "1.7.0_91".
    The correct version is: 1.6.

    export PATH=/usr/lib/jvm/java-1.6.0-openjdk.x86_64/bin/:$PATH
    -----------------------------------------------


    -----------------------------------------------
    make: *** [out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/V8HTMLElementWrapperFactory.h] 错误 255
    make: *** 正在等待未完成的任务....
    make: *** [out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/HTMLNames.h] 错误 255
    make: *** [out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/HTMLElementFactory.h] 错误 255


    解决方法:
    [root@localhost system]# gedit out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/HTMLElementFactory.h
    内容是:http://www.opensource.apple.com/source/WebCore/WebCore-332/html/HTMLElementFactory.h
    https://github.com/Treeeater/chrome_release_webkit_bindings/blob/1b1f616598da8506b56e858e6fd20b4883496b10/HTMLElementFactory.cpp

    [root@localhost system]# gedit out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/V8HTMLElementWrapperFactory.h
    内容是:https://github.com/Treeeater/chrome_release_webkit_bindings/blob/master/V8HTMLElementWrapperFactory.h
    https://github.com/Treeeater/chrome_release_webkit_bindings/blob/1b1f616598da8506b56e858e6fd20b4883496b10/V8HTMLElementWrapperFactory.cpp

    [root@localhost system]# gedit out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/HTMLNames.h
    内容是:https://github.com/Treeeater/chrome_release_webkit_bindings/search?utf8=%E2%9C%93&q=HTMLNames.h

    [root@localhost system]# gedit out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/XMLNames.cpp
    内容是:https://github.com/Treeeater/chrome_release_webkit_bindings/blob/1b1f616598da8506b56e858e6fd20b4883496b10/XMLNames.cpp

    [root@localhost system]# gedit out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/XMLNSNames.cpp
    内容是:https://github.com/Treeeater/chrome_release_webkit_bindings/blob/1b1f616598da8506b56e858e6fd20b4883496b10/XMLNSNames.cpp

    out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/HTMLNames.cpp
    https://github.com/Treeeater/chrome_release_webkit_bindings/blob/1b1f616598da8506b56e858e6fd20b4883496b10/HTMLNames.cpp

    out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/HTMLElementFactory.cpp
    https://github.com/Treeeater/chrome_release_webkit_bindings/blob/1b1f616598da8506b56e858e6fd20b4883496b10/HTMLElementFactory.cpp

    out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/V8HTMLElementWrapperFactory.cpp
    https://github.com/Treeeater/chrome_release_webkit_bindings/blob/1b1f616598da8506b56e858e6fd20b4883496b10/V8HTMLElementWrapperFactory.cpp

    [root@localhost system]# mv out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/platform/AtomicString.h out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/
    [root@localhost system]# mv out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/platform/AtomicString.cpp out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/
    [root@localhost system]#

    gedit out/target/product/jordan/obj/STATIC_LIBRARIES/libwebcore_intermediates/WebCore/HTMLNames.h
    #include "AtomicString.h"
    //extern const WTF::AtomicString xhtmlNamespaceURI;
    extern const AtomicString xhtmlNamespaceURI;

    ++++++++++++++++++++++++++++++++++

    https://github.com/CyanogenMod/android_device_motorola_jordan.git

    # repo init -u https://github.com/CyanogenMod/android_device_motorola_jordan.git

    # repo sync -j16

    error: .repo/manifests/: contains uncommitted changes

    # repo init -u git://github.com/CyanogenMod/android.git -b gingerbread

    # repo init -u git://github.com/CyanogenDefy/android.git -b gingerbread

    https://github.com/CyanogenMod/android_device_motorola_jordan.git

    git clone https://github.com/CyanogenMod/android_device_motorola_jordan.git
    git clone https://github.com/CyanogenMod/android_device_motorola_jordan

    <script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script>
    阅读(64) | 评论(0) | 转发(0) |
    给主人留下些什么吧!~~
    评论热议
  • 相关阅读:
    【转】【Egit】如何将eclipse中的项目上传至Git
    IntelliJ IDEA License Server本地搭建教程
    fastdfs-client-java工具类封装
    maven阿里云中央仓库
    Maven入门指南 :Maven 快速入门及简单使用
    如何在MyEclipse中配置jre的编译运行环境
    聚合函数 多次出现的某字段相同的记录。
    sql 过了试用期不能启动的,修改时间启动后还原。
    查看触发器内容
    Sql语句,先查询再插入一条语句完成。
  • 原文地址:https://www.cnblogs.com/ztguang/p/12649249.html
Copyright © 2011-2022 走看看