[odroid-pc] ubuntu12.04 64bit Android4.0.3 源码编译报错及解决的方法
第一个错误:
host Executable: cmu2nuance (out/host/linux-x86/obj/EXECUTABLES/cmu2nuance_intermediates/cmu2nuance)
/usr/bin/ld: cannot find -lncurses
collect2: ld returned 1 exit status
make: *** [out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb] Error 1
make: *** Waiting for unfinished jobs....
host Executable: coverage (out/host/linux-x86/obj/EXECUTABLES/coverage_intermediates/coverage)
安装libncurses5-dev:i386能够解决
sudo apt-get install libncurses5-dev:i386
编译kernel源代码时出现例如以下错误:
HOSTLD scripts/kconfig/mconf
scripts/kconfig/mconf.o: In function `show_help':
mconf.c:(.text+0x811): undefined reference to `stdscr'
scripts/kconfig/mconf.o: In function `main':
mconf.c:(.text+0x1286): undefined reference to `initscr'
mconf.c:(.text+0x128d): undefined reference to `stdscr'
scripts/kconfig/lxdialog/checklist.o: In function `print_arrows':
checklist.c:(.text+0x41): undefined reference to `wmove'
checklist.c:(.text+0x61): undefined reference to `acs_map'
安装libncurses5-dev能够解决
sudo apt-get install libncurses5-dev
第二个错误:
cc1plus: all warnings being treated as errors
make: *** [out/host/linux-x86/obj/EXECUTABLES/obbtool_intermediates/Main.o] 错误 1
解决:通过SMBAserver进入并改动源代码文件夹下/build/core/combo/HOST_linux-x86.mk文件:
将下面语句
HOST_GLOBAL_CFLAGS += -D_FORTIFY_SOURCE=0
改动为
HOST_GLOBAL_CFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
第三个错误:
make: *** [out/host/linux-x86/obj/EXECUTABLES/llvm-rs-cc_intermediates/slang_rs_export_foreach
在project根文件夹下,打开以下的makefile文件:
源代码文件夹 frameworks/compile/slang/Android.mk
.在打开的makefile文件里依照以下更改:
#local_cflags_for_slang := -Wno-sign-promo -Wall -Wno-unused-parameter -Werror
local_cflags_for_slang := -Wno-sign-promo -Wall -Wno-unused-parameter
原因非常easy 把警告当作error处理,所以此处要改动
第四个错误:
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/libMesa_intermediates/src/glsl/linker.o] Error 1
solutions:external/mesa3d/src/glsl/linker.cpp
+#include <stddef.h>
#include <cstdlib>
#include <cstdio>
第五个错误:
In file included from external/oprofile/libpp/arrange_profiles.cpp:24:0:
external/oprofile/libpp/format_output.h:94:22: 错误: reference ‘counts’ cannot be declared ‘mutable’ [-fpermissive]
make: *** [out/host/linux-x86/obj/STATIC_LIBRARIES/liboprofile_pp_intermediates/arrange_profiles.o] 错误 1
改动external/oprofile/libpp/format_output.h:94行
mutable counts_t & counts;
改为:
counts_t & counts;
第六个错误:
target arm C: libc <= bionic/libc/bionic/pthread.c
arm-linux-androideabi-gcc: error trying to exec 'cc1': execvp: No such file or directory
make: *** [out/target/product/generic/obj/SHARED_LIBRARIES/libc_intermediates/bionic/pthread.o] Error 1
gcc -print-prog-name=cc1
运行命令:export PATH=path/to/cc1:$PATH
后面的错误及解决方法:參照http://www.cnblogs.com/xingfuzzhd/archive/2012/09/05/2672000.html
编译成功后:
root@sjc-pc:~# vim ~/.bashrc
在文件里适当位置加入
#java 程序开发/执行的一些环境变量
export ANDROID_PRODUCT_OUT=~/out/target/product/generic
ANDROID_PRODUCT_OUT_BIN=~/out/host/linux-x86/bin
export PATH=${PATH}:${ANDROID_PRODUCT_OUT_BIN}:${ANDROID_PRODUCT_OUT};
#以上为songjiachen加入20140303
root@sjc-pc:~# source ~/.bashrc
root@sjc-pc:~# cd ~/out/target/product/generic
root@sjc-pc:~/out/target/product/generic# emulator -system system.img -data userdata.img -ramdisk ramdisk.img
emulator: WARNING: system partition size adjusted to match image file (166 MB > 66 MB)
此时模拟器已经成功执行
Could not configure '/dev/hpet' to have a 1024Hz timer. This is not a fatal
error, but for better emulation accuracy type:
'echo 1024 > /proc/sys/dev/hpet/max-user-freq' as root.
root@sjc-pc:~/out/target/product/generic# emulator -system system.img -data userdata.img -ramdisk ramdisk.img -partition-size 1024
此时模拟器已经成功执行 加入 -partition-size 1024为使=warning消除
直接输入emulator也可
[odroid-pc] ubuntu12.04 64bit Android4.0.3 源码编译报错及解决的方法的更多相关文章
- Ubuntu12.04下载Android4.0.1源码全过程,附若干问题解决[转]
学校里一直在做应用层开发,考虑到日后就业问题,这次决定研究源码和驱动,并进行编译.没想到就下载源码这一步折腾了我整整两天,期间遇到很多问题,哎,记录于此,希望日后再下源码的人不要再走无谓的弯路了.事实 ...
- [2013.7.5新鲜出炉] Ubuntu12.04下载Android4.0.1源码全过程----------------折腾两天,终于下好,附若干问题解决
本文转至 http://blog.csdn.net/yanzi1225627/article/details/9255457 下载源码这一步折腾了我整整两天,期间遇到很多问题,哎,记录于此,希望日后再 ...
- 英蓓特Mars board的android4.0.3源码编译过程
英蓓特Mars board的android4.0.3源码编译过程 作者:StephenZhu(大桥++) 2013年8月22日 若要转载,请注明出处 一.编译环境搭建及要点: 1. 虚拟机软件virt ...
- ubuntu13.04下载android4.0.1源码过程
最初我参考的是老罗的博客http://blog.csdn.net/luoshengyang/article/details/6559955 进行下载安装的,但弄着弄着就发现不太对劲了.这里记录下详细过 ...
- 转载: ubuntu13.04下载android4.0.1源码过程
转自:http://blog.csdn.net/zhanglongit/article/details/9263009,中间有些不行的地方进行了些小修改. 最初我参考的是老罗的博客http://blo ...
- Ubuntu12.04 64bit版本下载Android源码完整教程
首先去官网http://source.android.com/source/initializing.html可以看到完整的安装教程.不过一般情况下,按照这个教程是无法一步到位的,因为中途肯定会遇到很 ...
- Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决
昨晚在编译源码,make一段时间之后报错如下: # A fatal error has been detected by the Java Runtime Environment: # # SIGSE ...
- dotfuscator 在混淆.Net Framework 4.0以上版本的时候报错的解决方法
dotfuscator 在混淆.Net Framework 4.0以上版本的时候报错的解决方法 在混淆的时候报错了,错误描述大致如下: Could not find a compatible vers ...
- spark2.1.0的源码编译
本文介绍spark2.1.0的源码编译 1.编译环境: Jdk1.8或以上 Hadoop2.7.3 Scala2.10.4 必要条件: Maven 3.3.9或以上(重要) 点这里下载 http:// ...
随机推荐
- ThinkPHP -- magic_quotes_gpc()引起的反斜杠问题
magic_quotes_gpc()引起的反斜杠问题,通常是因为没有事先判断它的状态,而对字符串进行处理引起的. (本文学习借鉴于hechunhua楼主) 一般提供的服务器空间默认PHP 指令 m ...
- iOS 画圆
_demoView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)]; [self.view addSubview:_de ...
- spring学习之@ModelAttribute运用详解
@ModelAttribute使用详解 1.@ModelAttribute注释方法 例子(1),(2),(3)类似,被@ModelAttribute注释的方法会在此controller每个方法 ...
- OpenERP实施记录(10):采购补货
本文是<OpenERP实施记录>系列文章的一部分. 上文中业务部门接到沃尔玛三台联想Y400N笔记本电脑的订单,但是仓库无货.本文需要完成采购补货处理. 1. 联想YN400N是ABC公司 ...
- photoshop:制作sprite拼贴图片
目标: 将 合并为一张图片: 第一步:制作动作,便于批处理和重复使用 首先随便新建空白文档录制动作,alt+F9 创建新动作->1.打开一个小图2.图像->模式->RGB(避免有的图 ...
- [Android开发教程]Android官网developer training中文版教程 - 1.1.1 创建一个Android项目
本系列持续更新中.转载请注明来源. 前言:近期打算系统学习一下Android开发,发现Android官网上的developer training也是个非常好的学习资料,于是想到一边学习一边写一个中文版 ...
- android RecyclerView (三):ItemAnimator 详解
本文继上篇 ItemDecoration 之后,是深入理解 RecyclerView 系列的第二篇,关注于 ItemAnimator,主要是分析 RecyclerView Animators 这个库的 ...
- 学会了 Vim 还有必要用 GitHub Atom 或者 Sublime Text 么?
亦俊 ,90后,Vim 专栏作者 563 人赞同 Vim 知乎专栏:http://zhuanlan.zhihu.com/hack-vim 用过 [ Visual Studio 2015 ] [ Sub ...
- JMS基本概念之二
JMS规范 JMS定义了Java中访问消息中间件的接口,并没有给予实现,实现JMS接口的消息中间件称为JMS Provider,例如ActiveMQ JMS provider: 实现JMS接口和规范 ...
- idea的一些快捷键
查找文本的出现位置就用Ctrl+F/Ctrl+Shift+F在当前窗口或全工程中查找,再配合F3/Shift+F3前后移动到下一匹配处Intellij的Ctrl+N/Ctrl+Shift+N可以打开类 ...