[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

解决:通过SMBA服务器进入并修改源码目录下/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

在工程根目录下,打开下面的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

原因很简单 把警告当作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

编译成功后:

[email protected]:~# 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

[email protected]:~# source ~/.bashrc

[email protected]:~# cd ~/out/target/product/generic

[email protected]:~/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.

[email protected]:~/out/target/product/generic# emulator -system system.img -data userdata.img -ramdisk ramdisk.img -partition-size 1024

此时模拟器已经成功运行 添加 -partition-size 1024为使=warning消除

直接输入emulator也可

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-21 11:37:56

[odroid-pc] ubuntu12.04 64bit Android4.0.3 源代码编译报错及解决办法的相关文章

vue1.0中$index一直报错的解决办法

原文链接:https://www.cnblogs.com/liqiong-web/p/8144925.html 看学习视频,因为年份比较早了,其实vue早已迭代到vue2.0了,遇到一些问题: v-for遍历数组,获取索引 注意:在2.0版是1~10中,$index已废除,索引 (item,index). 如下为vue1.0的写法,$index浏览器会报错 1 <ul v-if="seller.supports" class="supports"> 2

Ubuntu12.04 LTS更新后,VirtualBox虚拟机不能使用的解决办法

$ sudo apt-get install linux-headers-`uname -r` Remove and reinstall dkms (will also remove virtualbox-dkms): $ sudo apt-get remove dkms   $ sudo apt-get install dkms virtualbox-dkms   $ sudo modprobe vboxdrv Ubuntu12.04 LTS更新后,VirtualBox虚拟机不能使用的解决办法

Ubuntu12.04下载Android4.0.1源码全过程,附若干问题解决[转]

学校里一直在做应用层开发,考虑到日后就业问题,这次决定研究源码和驱动,并进行编译.没想到就下载源码这一步折腾了我整整两天,期间遇到很多问题,哎,记录于此,希望日后再下源码的人不要再走无谓的弯路了.事实上可以在这里http://zhu.im/Android/下载源码,但是google推荐用repo来下载,为了多学东西就学下repo吧,毕竟下现成的也太么含量了.最初我参考的是老罗的博客http://blog.csdn.net/luoshengyang/article/details/6559955

[2013.7.5新鲜出炉] Ubuntu12.04下载Android4.0.1源码全过程----------------折腾两天,终于下好,附若干问题解决

本文转至 http://blog.csdn.net/yanzi1225627/article/details/9255457 下载源码这一步折腾了我整整两天,期间遇到很多问题,哎,记录于此,希望日后再下源码的人不要再走无谓的弯路了.事实上可以在这里http://zhu.im/Android/下载源码,但是google推荐用repo来下载,为了多学东西就学下repo吧,毕竟下现成的也太么含量了.最初我参考的是老罗的博客http://blog.csdn.net/luoshengyang/articl

android4.0后无法向Servlet发送请求解决办法

从4.0开始,强制性地规定网络堵塞任务都不能放在ui线程,不然直接报错. 个办法,在oncreate下面加入 StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads() .detectDiskWrites() .detectNetwork() // or .detectAll() for all detectable problems .penaltyLog() .build()); St

ASP.NET CORE MVC 2.0 项目中引用第三方DLL报错的解决办法 - InvalidOperationException: Cannot find compilation library location for package

目前在学习ASP.NET CORE MVC中,今天看到微软在ASP.NET CORE MVC 2.0中又恢复了允许开发人员引用第三方DLL程序集的功能,感到甚是高兴!于是我急忙写了个Demo想试试,我的项目结构如下: 可以看到解决方案中就两个项目,AspNetCoreWebApp就是一个ASP.NET CORE MVC 2.0的项目,而MyNetCoreLib是一个.Net Core 2.0的类库项目,为了体现AspNetCoreWebApp是通过程序集来引用MyNetCoreLib的,我还在解

Android4.0 主线程不能访问网络异常解决办法

从两个方面说下这个问题: 1. 不让访问网络的原因 2. 解决该问题的办法 不让访问网络的原因: 由于对于网络状况的不可预见性,很有可能在网络访问的时候造成阻塞,那么这样一来我们的主线程UI线程 就会出现假死的现象,产生很不好的用户体验.所以,默认的情况下如果直接在主线程中访问就报出了这个异常,名字是NetworkOnMainThreadException 解决该问题的办法 1. 独立线程 2. 异步线程AsyncTask 3. StrictMode修改默认的策略 1) 独立线程的办法 启动一个

【bug】vue-cli 3.0报错的解决办法

先上bug图片 bug说明:初装vue_cli3.0写了个组件,运行错误,显示如图, 代码提示:[Vue warn]: You are using the runtime-only build of Vue where the template compiler is not available. Either pre-compile the templates into render functions, or use the compiler-included build 思路:这里引用的是

Ubuntu12.04 64bit搭建Hadoop-2.2.0

一.准备工作: 集群安装ubuntu12.04 64bit系统,配置各结点IP地址 开启ssh服务,方便以后远程登录,命令sudo apt-get install openssh-server(无需重启) 使用命令:ssh [email protected]测试服务连接是否正常 设置无密钥登录: 修改主机名:sudo vim /etc/hostname将各主机设置成相应的名字,如mcmaster.node1.node2... 修改/etc/hosts文件:sudo vim /etc/hosts,