`
lx82319214
  • 浏览: 108112 次
  • 性别: Icon_minigender_1
  • 来自: 贵州
社区版块
存档分类
最新评论

android源码编译到一些出错问题总结

 
阅读更多

今天进行源码编译、虽然中午编译到时候遇到来一个权限问题、很轻松到一下google、百度一下解决了

但是后面还所出来另外到一个交叉编译到问题

在Ubuntu11.10下建立eabi交叉编译环境
arm-eabi-linux 交叉编译环境
备注:我采用的是最新版本的UBUNTU 11.10,里面的gcc,gdb,libgcc等都是最新的。
         我是以普通用户的身份登陆的。
1. 安装标准的C开发环境,由于Ubuntu安装默认是不安装的,所以需要先安装一下:
sudo apt-get install gcc g++ libgcc1 libg++ make gdb
其实这一步可以省去,但是最好检查一下,比较保险。

2.安装交叉编译器
我是从开源网上下载最新的支持EABI的交叉编译器cross的包,把它下载到 /home/chloe下,然后解压
sudo tar jxvf arm.tar.bz2
然后将解压后的文件都转移到/usr/local/arm下(若/usr/local/下没有arm文件夹,可先建一个 sudo mkdir  /usr/local/arm):sudo mv arm /usr/local/arm

3.把交叉编译器的路径加入到PATH
sudo vim /etc/bash.bashrc

 



在后面加入如下代码:

if [ -d /usr/local/arm/2.95.3 ] ; then
PATH=/usr/local/arm/2.95.3/bin:"${PATH}"
fi

4.使新的环境变量生效
su root
enter the passwd
then

# source /etc/profile

5.检查是否将路径加入PATH的方法:

echo $PATH

如果显示的内容中有/usr/local/arm/arm-2008q1/bin,说明已经将交叉编译器的路径加入PATH
自此,交叉编译环境安装完成。
6.测试安装是否成功
下面我们就来测试一个简单的例子。
/*Hello.c*/
#include <stdio.h>

main()
{
printf("hello world!\n");
}
程序输好以后确认无误,保存。进入程序文件所在目录执行:

arm-none-eabi-gcc hello.c –o hello

编译好了以后就可以下载到目标机进行测试了。当然也可以先在PC机上 测试正误。用gcc hello.c –o hello就可以生成PC机上程序了,在运行./hello 就可以发现终端显示hello!字样。用arm-linux-gcc编译的程序在PC机上是不能运行的,运行后给出错误报告:无法执行二进制文件。说明经 过交叉编译环境编译出的文件是硬件可执行的二进制代码文件。

分享到:
评论

相关推荐

    Ubuntu 64 位编译Android源码出错解决办法

    在进行Ubuntu 64位系统下Android源代码的编译...然而,鉴于Android源码的复杂性,实际编译过程中可能还会遇到其他类型的错误或警告,开发者应持续关注编译日志,灵活运用相关工具和资源,不断调试直至成功完成编译。

    安卓系统源码编译-(非常珍贵)

    安卓系统的源码编译是一项技术性极强的工作,涉及到多个环节和多种工具的配置。下面将详细讲解如何进行安卓源码的编译,包括编译环境的搭建、编译过程及遇到的常见问题与解决方法。 1. **编译环境搭建** - **操作...

    Android 4.2.1 源码下载和编译环境安装及编译

    总之,Android源码的下载和编译是一个相对复杂的过程,涉及到多个步骤和工具。理解这些步骤并熟悉相关命令是成功编译Android系统的关键。同时,保持耐心和细致,因为这个过程可能需要花费较长的时间,并且可能需要...

    ubuntu 10.04下编译Android源码技术文档

    - Android源码编译需要大量的磁盘空间。建议至少为编译环境预留20GB的空间。 ```bash df -h ``` 3. **环境变量设置** - 添加环境变量以支持后续的编译工作: ```bash echo 'export PATH=$PATH:/home/your...

    编译android VLC时,需要的组件:aom-v1.0.0.errata.1.tar.gz

    在Android平台上编译VLC(VideoLAN Client)播放器,是一项技术性较强的任务,涉及到多媒体编解码、跨平台开发以及构建系统等多个方面。在这个过程中,`aom-v1.0.0.errata.1.tar.gz`是一个重要的组件,它是Google...

    Android_WebRtc编译, 配置, 编译出错

    - 如果出现编译问题,可以尝试清理并重新同步项目,或者更新到最新版本的源码。 - 当前文档是基于特定时间点的WebRTC版本,随着时间推移,编译过程和依赖可能会有所变化,建议参考最新的官方文档或社区资源。 总之...

    android反编译工具

    3. **AndroidKiller**:作为集成工具,它整合了上述两种工具的功能,用户只需运行AndroidKiller.exe,就能自动完成从APK到源码的反编译过程。这不仅省去了手动操作的繁琐,也减少了出错的可能性。 反编译Android...

    Android反编译工具

    6. **安全考虑**:请注意,反编译和修改APK可能涉及法律问题,尤其是对商业应用的反编译。因此,只有在你拥有源代码授权或者对开源软件进行学习研究时,才应进行此类操作。 在Android反编译过程中,除了ApkToolkit...

    arm 鲁班猫LubanCat-RK3588 Ubuntu20.04 源码编译安装opencv20.04

    在本文中,我们将深入探讨如何在基于ARM架构的鲁班猫LubanCat-RK3588设备上,运行Ubuntu 20.04操作系统,进行OpenCV 4.7.0的源码编译与安装。OpenCV(开源计算机视觉库)是一个广泛应用于图像处理、计算机视觉和机器...

    android aapt-v24 源代码工程编译

    总结,编译AAPT v24源代码需要一定的编译环境知识和耐心,但通过这个过程,开发者能够更好地理解Android资源处理的底层逻辑,为个性化需求和性能优化打下基础。同时,这也是一种提升编程技能和深入学习Android系统的...

    [开源]eoe的Android客户端源码

    [开源]eoe的Android客户端源码 ... 如果编译出错,请修改项目根目录下的 project.properties 文件。 推荐使用Android 4.0 以上版本的SDK: target=android-14 更多资源: http://cleopard.download.csdn.net

    解决在练习gallery时编译出错的问题

    在Android Studio中,可以尝试执行“Build”菜单下的“Clean Project”和“Rebuild Project”,这将清除旧的编译产物并重新构建整个项目,有时能解决一些临时的编译问题。 5. **检查资源文件**: 如果项目包含...

    Android 编译出错版本匹配问题解决办法

    Android 编译出错版本匹配问题解决办法 解决问题的关键在于版本匹配, compileSdkVersion compileSdkVersion targetSdkVersion 这三个参数的整数值都应该是一样的,这里我全部设置成23, 在这之前我还升级了:...

    android 反编译工具包,很好使

    1. Dex到Java源码:使用工具如dex2jar将Dex转换为Java字节码的JAR文件,然后用JD-GUI或JAD进行反编译,得到近似的Java源代码。 2. 资源解析:Apktool是一个流行的工具,可以解包APK,还原资源文件,并生成对应的XML...

    安卓Android源码——轻量级sqliteorm框架.zip

    总结,Android轻量级SQLite ORM框架是提升开发效率的有效工具,它简化了数据库操作,让开发者能专注于业务逻辑。了解并熟练掌握一款合适的ORM框架,对于Android应用的开发至关重要。通过分析和实践"demo"项目,我们...

    vlc android源码 直接可以导入eclipse运行 part1

    vlc android源码 直接可以导入eclipse运行。加密后超过60m 需要同时导入part2的项目才跑的起 编译的so库是针对x86架构的芯片的,arm的跑不了。版本比较新,target=android-19以上才不会出错

    vlc android源码 直接可以导入eclipse运行 part2

    vlc android源码 直接可以导入eclipse运行。加密后超过60m 需要同时导入part1的项目才跑的起 编译的so库是针对x86架构的芯片的,arm的跑不了。版本比较新,target=android-19以上才不会出错

    Linphone 4.0.1 android 编译源码包(包含所有的submdules:ffmpeg、vpx、xml2、ortp)

    此外,由于涉及到多个子模块的编译,整个过程可能会比较复杂,耐心细致地按照步骤来可以有效避免出错。 通过上述知识点的介绍,相信您对Linphone 4.0.1 Android编译源码包的相关信息有了更深入的理解。无论是对于...

    导入AndroidStudio无法运行起来的几种解决办法.docx

    要解决安卓源码无法在 Android Studio 中运行的问题,我们需要修改三个关键文件:build.gradle、app 文件夹中的 build.gradle 和 gradle/wrapper/gradle-wrapper.properties 文件。通过这些修改,我们可以让项目正常...

    Android高级应用源码-Android应用源码安卓与PC的Socket通信项目java版.zip

    标题 "Android高级应用源码-Android应用源码安卓与PC的Socket通信项目java版.zip" 涉及的核心知识点是Android应用与PC之间的Socket通信,这是一种基于Java编程语言的网络通信方式。在Android系统中,Socket通信常...

Global site tag (gtag.js) - Google Analytics