http://webee.sinaapp.com/archives/28
PS:很多人在编译android4.0中可能遇到一些列问题,比如说其中一个就是GCC版本过高。
————————————————————————————————–
例如:
/usr/include/features.h:323:26: 致命错误: bits/predefs.h:没有那个文件或目录
编译中断。
make: *** [out/host/linux-x86/obj/EXECUTABLES/mkbootfs_intermediates/mkbootfs.o] 错误 1
make: *** 正在等待未完成的任务….
In file included from /usr/include/stdlib.h:25:0,
from build/tools/acp/acp.c:11:
/usr/include/features.h:323:26: 致命错误: bits/predefs.h:没有那个文件或目录
编译中断。
ubuntu 11.10的gcc版本是4.6.1,版本太高,编译android时出错,要把gcc版本改为4.4.3。
废话不多说了,直接写解决方法吧;
ubuntu 系统下安装gcc 4.4的方法是仅用以下两条命令。
sudo apt-get install gcc-4.4
sudo apt-get install g++-4.4
装完后在/usr/bin目录下
$ ls -l gcc*
lrwxrwxrwx 1 root root 7 2011-10-29 09:11 gcc -> gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6
这时会发现gcc 链接到gcc-4.6, 需要将它改为链接到gcc-4.4 :
sudo mv gcc gcc.bak
sudo ln -s gcc-4.4 gcc
同理
ls -l g++*
lrwxrwxrwx 1 root root 7 2011-08-14 15:17 g++ -> g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6
需要将g++链接改为g++-4.4:
/usr/bin$ sudo mv g++ g++.bak
/usr/bin$sudo ln -s g++-4.4 g++
再查看gcc和g++版本号:
gcc -v
g++ -v
均显示gcc version 4.4.6 ,现在一切ok,你可以测试了,我之前也出现问题过,现在用一小时多一点就编译成功了,大家可以去试试了。
分享到:
相关推荐
本主题将深入探讨如何在Android设备上建立和使用GCC(GNU Compiler Collection)和G++(GNU C++ Compiler)编译环境,以实现C和C++代码的编译和执行。这个压缩包提供了必要的工具和步骤来实现这一目标。 首先,`...
在Android平台上,GCC(GNU Compiler Collection)是一种关键的开发工具,它允许开发者使用C、C++等编程语言来编写和编译应用程序。GCC是开源的,由GNU项目维护,广泛应用于各种操作系统,包括Linux和Android。本文...
如果在配置过程中遇到关于Eigen的问题,可以通过下载Eigen的源码或者安装预编译版本来解决。配置时指定Eigen的目录即可。 - **BoostFLANN**:BoostFLANN需要专门针对Android平台进行编译。这意味着你需要从头开始...
此外,还要注意版本兼容性,确保使用的NDK版本和GCC版本相匹配,以避免编译错误或运行时问题。 9. **优化**:使用 `-march`、`-mtune` 和 `-mfpu` 等编译选项来针对特定硬件进行优化,提升代码执行效率。 10. **...
在Android平台上,开发C/C++应用或库时,我们经常需要用到GCC(GNU Compiler Collection)和G++(GNU C++ Compiler),它们是GNU项目的一部分,提供了对C和C++语言的编译支持。随着Android NDK(Native Development ...
在【Android-GCC-demo.exe】这个压缩包中,很可能是包含了一个简单的GCC编译流程示例,可能包括以下步骤: 1. **环境配置**:首先,你需要安装Android NDK,并设置好环境变量,使得可以访问到NDK中的编译工具链。 ...
在Android开发过程中,有时我们需要为不同的平台或设备编译特定的应用程序,比如网络性能测试工具iperf3。本文将详细阐述如何在Linux环境下搭建Android交叉编译环境,并针对iperf3.0源码进行编译,以生成适用于...
编译过程中可能会遇到一些问题,如配置错误或编译失败,通常可以通过重新配置或清理项目来解决这些问题。 ##### 3.4 交叉编译htop 2.0.1版本 完成ncurses的编译后,可以开始编译htop。首先需要运行`autogen.sh`脚本...
### Android编译常见错误解析 #### 一、概述 在进行Android系统开发的过程中,经常会遇到各种编译错误,这些问题往往会让开发者花费大量的时间去解决。本文档基于在Ubuntu 11上的编译经验,总结了一些常见的编译...
### Android编译独立源代码知识点解析 #### 一、概览 在深入探讨如何编译Android独立源代码之前,我们先来了解下整个过程的基本框架。Android作为一个开源项目,其源代码包含了操作系统的核心部分以及一系列应用...
本文将深入探讨Ubuntu系统下Android源码的编译过程,包括必要的软件安装、环境变量配置、源码获取以及编译过程中可能遇到的问题及其解决方法。 首先,要进行Android源码编译,必须确保Ubuntu系统已安装了基础的开发...
对于 Android 7.0 及以上版本的编译,推荐使用 OpenJDK 8。具体步骤如下: 1. **添加 OpenJDK PPA**: ```bash sudo add-apt-repository ppa:openjdk-r/ppa ``` 2. **更新软件列表**: ```bash sudo apt-get ...
在编译 Android 源码的过程中,可能会出现一些问题,例如 JDK 版本问题和 i686-linux-gcc 问题。 JDK 版本问题 在编译 Android 源码时,可能会出现 JDK 版本问题,例如 You are attempting to build with the ...
本文将详细介绍如何交叉编译libvpx源码,并生成适用于Android的头文件和库,以及如何在Android项目中使用这些库。 首先,交叉编译libvpx涉及到以下步骤: 1. **环境准备**:确保你已经安装了适用于Android的交叉...
基于Google官方gcc4.9.x修改的源码, 支持直接通过交叉编译器编译出在Android上跑的gcc, gcc版本为7.2.0 建议静态编译
- 也应设置gcc编译器的版本,以满足Android编译环境的要求。 6. **设置多用户环境** - 新建用户并配置Samba用户和共享目录,使得其他用户可以访问服务器上的资源。 - 配置sudo权限组,确保开发团队中的其他成员...
标题"libyuv 最新编译的Android库,需要的下载"指出,这是一个关于libyuv库的更新版本,特别针对Android平台,并且是编译完成的版本,适合需要该库的开发者下载使用。描述中的内容与标题相呼应,再次强调了这是针对...
标题中的“android内核交叉编译工具”通常包括一系列工具,如GCC编译器、链接器、头文件和库,它们是为特定的目标架构定制的。这些工具可以从Linux内核官方网站或者Android源码仓库获取。下载后,这些工具通常被放置...
注意,Android开发和编译环境可能会随着Android版本的更新而有所变化,所以最好查阅最新的官方文档以获取最准确的信息。同时,由于Ubuntu 10.04已停止支持,考虑升级到更现代的版本以获得更好的支持和安全性。
标题中的"ANDROID交叉编译后的BUSYBOX-1.19.4"指的是专门为Android系统通过交叉编译技术生成的BusyBox 1.19.4版本。 【交叉编译】 交叉编译是一种在一种平台上生成可在另一种平台运行的代码的编译过程。在这个案例...