zoukankan      html  css  js  c++  java
  • android 源码编译问题总结(二)

    互联网 信息聚合网站 : www.yidin.net 最新最完整的业界信息

     接上期

    查看文件信息和版本
    yinchong@yinchong-ThinkPad-W510:/usrb/gcc/x86_64-linux-gnu/4.6.1$sudo ls -l /usrbbtinfo*
    -rw-r--r-- 1 root root 261726 2011-09-17 03:31/usrbbtinfo.a
    lrwxrwxrwx 1 root root     182011-10-27 12:14 /usrbbtinfo.so -> bbtinfo.so.5

    编译完成SDK 就要启动模拟器
    Android list 查看可以用的 sdk 和 avd  发现 为空
    自己编译的android sdk无法识别各版本platform的问题
    进入编译结果目录 out/hostnux-x86/sdk/android-sdk_eng.cmoaciopm_linux-x86/tools 发现android-2.3是存在的,那为什么SDKManager检测不到呢?
     
    SDKManager无法检测到Installpackages的原因了,我所检出的androidgingerbread源代码编译出的sdk目录结构与SDKManager检测逻辑是不一致的。
    android在2.3对sdk目录结构进行了调整,将platform下面的tools文件夹移动到SDK根目录下,命名为platform-tools(里面包含了该platform的aapt和adb等工具。这样,platform在各操作系统下都统一了,不需要再为不同操作系统发布不同的platform,仅发布不同的platform-tools即可)。
    可见gingerbreak代码分支中sdkmanager的代码不是“最新的”,没有与编译出来的sdk目录结构保持一致。
    做了软链接,骗过sdkmanager,重启检测一切正常
    ln-sf /home/justin/android/src/out/hostnux-x86/sdk/android-sdk_eng.justin_linux-x86/tools   ~/android/sdk
    根据自己的路径设置吧


    启动虚拟机出现
    SDL init failure, reason is: No available video device: OnUbuntu64
    问题需要安装
    apt-get install ia32-libs lib32stdc++6


     
    问题Cannot load 32-bit SWT libraries on 64-bit JVM
    1.For Eclipse, go to Eclipse -> Preferences -> Java -> Installed JRE
    2.For Flash Builder, go to Flash Builder -> Preferences -> Java ->Installed JREs Then, edit the selected Java VM, adding the following value forthe Default VM Arguments field -d32
     
    常见的错误请参考

    http://0123.blog.163.com/blog/static/47883120101024104416786/
    http://www.threeway.cc/sitecn/informationInfo.aspx?tid=1382&pid=2445

    找不到-lstdc++
        /usr/bin/ld: cannot find -lstdc++
    解决方法:
    安装g++-multilib,lib32z1-dev 和 lib32ncurses5-dev
          apt-get installg++-4.2-multilib  lib32z1-dev lib32ncurses5-dev
     
    权限不够遇到多次
    /bin/bash:prebuiltnux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc: 权限不够
    /bin/bash:prebuiltnux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc: 权限不够
    /bin/bash: build/core/find-jdk-tools-jar.sh:权限不够
    /bin/bash:build/tools/findleaves.py: 权限不够
    /bin/bash:build/tools/findleaves.py: 权限不够
    Checking API:checkapi-last 
    /bin/bash:out/hostnux-x86/bin/apicheck: 权限不够
    解决:
    chmod a+xprebuiltnux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc
    对所有没有权限的文件增加可执行权限
     
    欢迎各位同学加入 android 技术群 155595043   
    个人微博: http://weibo.com/338226333有问题可以微博商讨
  • 相关阅读:
    Java实现 LeetCode 455 分发饼干
    Java实现 LeetCode 455 分发饼干
    Java实现 LeetCode 455 分发饼干
    Java实现 LeetCode 454 四数相加 II
    Java实现 LeetCode 454 四数相加 II
    Java实现 LeetCode 454 四数相加 II
    FFmpeg解码H264及swscale缩放详解
    linux中cat more less head tail 命令区别
    C语言字符串操作总结大全(超详细)
    如何使用eclipse进行嵌入式Linux的开发
  • 原文地址:https://www.cnblogs.com/ondream/p/2513141.html
Copyright © 2011-2022 走看看