Fedora16下载编译android源码4.0

GmSSL跨平台部署全攻略:从源码编译到移动端集成的实践指南 密码学库是现代应用安全通信与数据保护的基石,其核心原理在于通过加密算法、哈希函数和数字签名等技术,确保数据的机密性、完整性与身份认证。在国密算法(SM2/SM3/SM4)日益普及的背景下,选择并正确部署一个可靠的开源密码库成为众多开发项目的关键技术需求。GmSSL作为支持国密算法的开源密码库,为开发者提供了符合国家标准的密码学工具,其技术价值在于实现了与国际主流算法(如RSA/AES)的兼容与替代,并针对国密算法进行了深度优化。在实际工程中,密码库的部署常涉及服务端、桌面端及移动端(Android/iOS) 阅读详情
            google不断的升级android, 主流的操作系统也在不断的升级,32到64位,版本1.0到2.0,到3.0......, 其实这背后也是这些软件供应商在不断的角力, 在这个迭代的年代,却苦了程序员。最近把Fedora升级到 16, 64bit系统,编译android ICS源码。过程中会遇到不少问题,先总结如下:

           1. 先需要配置安装JDK, 务必下载安装JDK1.6版本,否者编译会遇到意向不到的问题,还是需要按照google官方文档会省不少力气,可惜google官方文档是基于Ubantu

           2. 按照官方文档开始编译

               # cd android_src

               # . build/setenv.sh

               #lunch

               #make

            3. 编译错误解决

               3.1 glibc 32库

                 In file included from /usr/include/features.h:387:0,
                 from /usr/include/stdlib.h:25,
                 from build/tools/acp/acp.c:11:
                 /usr/include/gnu/stubs.h:7:27: 致命错误:gnu/stubs-32.h:没有那个文件或目录

                 #yum install glibc-devel.i686

               3.2  缺少32位的zlib库

                host Executable: aapt (out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/aapt)
                /usr/bin/ld: skipping incompatible /usr/lib64/libz.so when searching for -lz
                /usr/bin/ld: cannot find -lz
                collect2: ld 返回 1

                #yum install zlib.i686 zlib-devel.i686
               

              host Executable: adb (out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb)
              host Executable: adb (out/host/linux-x86/obj/EXECUTABLES/adb_intermediates/adb)
              /usr/bin/ld: skipping incompatible /usr/lib64/libtinfo.so when searching for -ltinfo
              /usr/bin/ld: cannot find -ltinfo
              collect2: ld 返回 1


             #yum install ncurses-devel.i686 ncurses-libs.i686

            host SharedLib: libOpenglRender (out/host/linux-x86/obj/lib/libOpenglRender.so)
            /usr/bin/ld: skipping incompatible /usr/lib64/libX11.so when searching for -lX11
            /usr/bin/ld: cannot find -lX11
            /usr/bin/ld: skipping incompatible /usr/lib64/libX11.so when searching for -lX11
            /usr/bin/ld: cannot find -lX11
           collect2: ld 返回 1
           make: *** [out/host/linux-x86/obj/lib/libOpenglRender.so] 错误 1

          #yum install libX11.i686 libX11-devel.i686

          host StaticLib: libGLcommon (out/host/linux-x86/obj/STATIC_LIBRARIES/libGLcommon_intermediates/libGLcommon.a)
          host SharedLib: libGLES_CM_translator (out/host/linux-x86/obj/lib/libGLES_CM_translator.so)
          /usr/bin/ld: skipping incompatible /usr/lib64/libGL.so when searching for -lGL
         /usr/bin/ld: cannot find -lGL
         collect2: ld 返回 1
         make: *** [out/host/linux-x86/obj/lib/libGLES_CM_translator.so] 错误 1



         #yum install libgle.i686 libgle-devel.i686
         #yum install libGLEW.i686 libGLEWmx.i686
         #ln -sf /usr/lib/libGL.so.1.2 /usr/lib/libGL.so


      
        sh: gperf: 未找到命令
        calling gperf failed: 32512 at ./makeprop.pl line 140.
        make: *** [out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/css/CSSPropertyNames.h] 错误 25
        make: *** 正在删除文件“out/target/product/generic/obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/css/CSSPropertyNames.h”

        target Generated: libwebcore <= external/webkit/Source/WebCore/html/DocTypeStrings.gperf
        Can't locate Switch.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5  /usr/share/perl5 .) at external/webkit/Source/WebCore/make-hash-tools.pl line 23.
         BEGIN failed--compilation aborted at external/webkit/Source/WebCore/make-hash-tools.pl line 23.


        #yum search perl|grep switch
        #yum install perl-Switch.noarch
        原因是fedora16缺省安装的perf-5.14拿掉了switch.pm模块,所以需要重新安装一下

        顺利打完,收工,分析原因在64bit系统中编译android, 部分代码需要32位的一些库支持,才能顺利编译,因为目标平台现在arm都是32bit.



红米K40内核编译实战:修复电量显示与集成SukiSU权限管理 Android内核作为移动操作系统的核心组件,负责硬件抽象、资源管理和系统调度等基础功能。其编译原理基于Linux内核构建体系,通过交叉编译工具链将源码转换为特定架构的可执行镜像。在技术价值层面,自定义内核能够修复官方固件的已知问题、优化性能功耗表现,并扩展系统功能边界。特别是在设备兼容性优化和系统级权限管理方面,内核定制具有重要实践意义。以红米K40为例,针对骁龙870平台的内核编译可解决电量显示异常等常见问题,同时集成SukiSU内核级权限管理模块。这类技术方案适用于Android设备深度定制、系统问题 阅读详情

相关推荐

Linux下scrcpy编译安装与参数调优全攻略

在Linux系统管理中,软件编译安装是开发者获取最新功能、深度定制应用的核心技能。其原理在于绕过系统仓库的预编译版本,直接从源代码构建,从而实现对软件版本、编译选项和依赖关系的完全控制。这项技术的价值在于能紧跟上游开发,及时获得安全更新和性能优化,尤其适用于需要特定版本或自定义补丁的场景。在音视频处理和设备交互领域,开源工具链如FFmpeg(用于编解码)和ADB(Android调试桥)是关键技术基础。本文聚焦于将这些通用技术应用于scrcpy——一款基于ADB协议的高性能安卓投屏工具,详细解析其依赖管理(如

weixin_36250541的博客 395

ubuntu 上android 源码编译 全过程(二)

前面 jdk安装完成 剩下的就是下载android源码 编译了 首先装一下这些,编译用到 sudo apt-get install flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.8-dev build-essential zip curl valgrind 里面libsdl1.2-dev  libwxgtk2.8-dev是新的,

chenaini119的专栏 1190

关于Arduino中的常用函数

一、I/O函数 二、时间函数 三、数学函数 abs 返回其参数的无符号值 【abs(12)返回12,abs(-12)也返回12】 constrain 限制一个数字以阻止它超出范围。第一个参数是被限制的数字,第二个参数是范围区间的开始,第三个参数是允许的数字范围区间的结尾。 【constrain(8,1,10)返回8,constrain(11,1,10)返回10,constrain(0,1,10)返回1】 map 将一个范围内的数字映射到另一个范围。第一个参数是要映射到数字,第二个和第三个参数是from范围(

TREE的博客 7322

编译Android4.0源码时常见错误及解决办法

原文转载自:编译Android4.0源码时常见错误及解决办法 在Ubuntu12.04(64位)编译Android4.0源码时,遇到各种各样的问题。不是缺这个,就是少那个。现把这些问题和解决方法罗列出来(最新统计)。 错误(1): /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or dir

积累... 1580

Arduino+L298N电机驱动模块避坑指南:从接线到PWM调速的5个常见错误

本文详细解析了使用Arduino与L298N电机驱动模块时,从电源配置、跳线帽使用到PWM调速的5个常见错误与避坑指南。重点阐述了如何正确分离逻辑与电机电源、拔掉ENA/ENB跳线帽以实现PWM调速、理解H桥接线逻辑以控制直流电机正反转,并提供优化代码与散热建议,帮助开发者稳定驱动电机。

rust6ferris的博客 561

学习海康VisionMaster之表面缺陷滤波

本文介绍了VisionMaster中表面缺陷滤波技术的应用。该技术通过数学变换抑制背景干扰、增强缺陷特征,适用于电池铝壳、垫圈/螺丝等无纹理背景的表面缺陷检测(划痕、凹坑、异物等)。操作流程包括:图像导入、轮廓定位、位置修正、参数设置(重点讲解滤波核尺寸/数量/标准差等关键参数的调整策略)。文章通过案例演示了如何通过多方向滤波响应识别表面划伤,并指出需结合blob分析进一步优化检测结果。该技术对工业质检具有实用价值,参数设置需结合缺陷特征与背景特性灵活调整。

yuhouxiyang的专栏 2826

Android系统编译常见问题

make: * [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cpp] Error 127解决: sudo apt-get install bison make: * [out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_

zhangwenhaojf40it的博客 1880

【3D Slicer】阈值法测量肺部病灶体积

利用3D Slicer测量肺容积

SQ的博客 4857

Android源码编译make的各类错误解决方案汇总

问题: You are attempting to build with the incorrect version of java.  Your version is: java version "1.6.0_22". The correct version is: Java SE 1.6. 查了一下现在已安装的java: java -versionjava versi

孙强 Jimmy 的博客 2万+

ImportError: DLL load failed while importing _rust: 找不到指定的程序的解决方案

 本文主要介绍了ImportError: DLL load failed while importing _rust: 找不到指定的程序的解决方案,希望能对使用Python的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 19万+

innovus:addRepeaterByRule用法

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?addRepeaterByRule不管transition/timing violation,只根据约束的length/cap/fanout等等去给net 插buffer。

m0_61544122的博客 1089

Android源码错误处理

1.安装Ubuntu 10.10       可选择使用Wubi安装。 2.安装Python       Ubuntu 10.10 已经安装了2.6版。 3.安装JDK       更新软件库:       sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"       sudo

小金的优快云博客 1799

YOLOv11 改进 - C2PSA | C2PSA融合Mask Attention掩码注意力,可学习掩码矩阵破解低分辨率特征提取难题 | 2025 预印

本文提出了用于低分辨率图像分割的MaskAttn - UNet框架,并将其核心的掩码注意力机制集成到YOLOv11中。传统U - Net类模型难以捕捉全局关联,Transformer类模型计算量大,而掩码注意力机制通过可学习的掩码,让模型选择性关注重要区域,融合了卷积的局部效率和注意力的全局视野。其工作流程包括特征适配、掩码生成、定向注意力计算和特征融合。我们将掩码注意力机制代码集成到YOLOv11中。

魔改工程师的博客 403

fedroa16 编译android 4.0.1

1. JDK 6  这个需要到sun的网站下载一个安装即可: http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html  下载完之后chmod再运行安装 2. 最新的android源码要求make的版本为3.81, make3.82的

zlm_250的专栏 1731

[DDR5] 模式寄存器 Mode Register MRR/MRW

模式寄存器用于定义各种操作模式。在初始化过程中,可以通过重新执行MRS命令来更改模式寄存器的内容。

串起点滴 1637

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Fedora16 编译android 4.0

这周突然心血来潮,很久没玩过android的源码了,决定下个最新的4.0回来看看,但是notebook最新装的是fedora16的系统,发现有些地方和以前旧版本的要求不一样,下面就一点一点记录下来,免得以后忘记吧,呵呵 1. JDK 6   这个需要到sun的网站下载一个安装即可: http://www.oracle.com/technetwork/java/javasebusin

xlb6688的专栏 2744

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

fedora 14 无法编译android源码的问题

在dell380上装了fedora14后,发现编译不了android(nvidia)的源码: 1) JDK版本问题: f14上的JDK默认版本是1.6,我们需要1.5的版本,可以用下面的方法修改: $ alternatives --config java然后输入‘2’。就可以了。这样就将JDK的版本改为1.5了。但是,还是我编译的时候还是出错了,我怀疑是f14自带的JDK的问题,只能

大林日志 2164

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

为android平台编译opencv,如何为Android平台编译 opencv3 和 opencv_contrib (Linux)(示例代码)...

本文以编译opencv3.3.0和opencv_contrib 3.3.0为例,系统为Linux x64 (Fedora 21),具体步骤如下:1. 下载Source code zip 压缩包从下面网址,选择opencv 3.3.0 Source code下载https://github.com/opencv/opencv/releases从下面网址,选择下载与opencv3.3.0对应的open...

weixin_36190910的博客 1127

串口烧录android板子,在tiny6410开发板上烧写编译好的android过程

纯粹把过程记录下来,备份一下。过程比较纠结。。首先编译了一个android2-1,内核版本是2.6.28的版本,用fedora 8,gcc版本是4.1.2,成功编译,烧写到话机,开机,长时间黑屏,无法开机,看了一下串口输出信息,提示LoadKernel...UncompressingLinux........................................................

weixin_29251131的博客 311

Fedora Core 5 编译Android

如果选择比较新的Linux版本(例如Fedora 10),则编译Android将比较顺利,一般直接make就可以成功生成所需要的文件和系统内核。(最多需要安装gperf), 但在比较旧的Linux内核上编译Android将遇到很多错误,本文以Fedora Core 5为例讲解所安装的步骤,供大家参考。 1. 因为Android SDK需要JDK 5或JDK 6支持, 但是Fedora Core

无语僧 326

android pppoe 源码,android移植pppoe拨号上网的全过程

硬件环境:Tiny6410开发板软件环境:fedora14 + Android 2.3.4 + linux-2.6.361、编译内核支持pppandroid自带pppd,所以仅仅须要移植pppoe即可了。首先在内核中make menuconfig-> Device Drivers -> Network device support。选中全部ppp选项。退出,保存配置,又一次运行make...

weixin_42537142的博客 1239

scrcpy v3.3.4:如何在电脑上实现安卓设备的完美投屏与控制

你是否曾想过将手机屏幕无缝投射到电脑上,用键盘鼠标操作安卓应用?scrcpy正是解决这一需求的终极开源工具。作为一款免费、高性能的安卓设备投屏与控制软件,scrcpy让你能够在Linux、Windows和macOS系统上实时显示并操作安卓手机或平板,无需root权限,无需在设备上安装任何应用。最新v3.3.4版本带来了更稳定的性能和更丰富的功能,为开发者、测试人员和普通用户提供了完整的跨设备工作流

gitblog_01073的博客 409

解决aria2编译难题:c-ares库兼容性深度剖析与实战方案

aria2是一款轻量级多协议、多源的跨平台命令行下载工具,支持HTTP/HTTPS、FTP、SFTP、BitTorrent和Metalink等多种协议。在编译aria2时,c-ares库的兼容性问题常常困扰着开发者,本文将深入剖析这些问题并提供实用的解决方案。 ### 一、c-ares库在aria2中的关键作用 c-ares库是aria2实现异步DNS解析的核心依赖。根据项目文档[README

gitblog_00690的博客 388

Ubuntu 已登陆 Windows Store;微软发布了 TypeScript 2.4

(点击上方公众号,可快速关注)参考:开源中国、腾讯、solidot、cnBeta、IT之家等0、Ubuntu 16.04 LTS 现已登录 Windows Store据微...

redditnote的博客 156

Linux和macOS上玩基岩版Minecraft?这份手把手避坑指南让你一次跑通

在 Linux 或 macOS 的桌面系统上,商店里找不到基岩版(Bedrock Edition)Minecraft 的官方版本,而 mcpelauncher-manifest 就是一个为此而生的开源启动器——它把安卓版的基岩版游戏装进桌面系统里跑,覆盖 1.13.0 到 1.21.73 的绝大部分版本,还自带微软账号登录、游戏下载和版本管理。 先说清楚它的定位,免得期待错位:这个仓库是**启动

gitblog_00271的博客 395

终极指南:5步快速掌握QtScrcpy安卓设备键鼠映射与屏幕控制

QtScrcpy是一款开源免费的安卓设备实时显示与控制软件,让您能在电脑上通过键鼠操作手机,特别适合手游玩家和开发者。这款跨平台工具支持Windows、Linux和macOS,无需root权限,提供30-60fps的高性能渲染和35-70ms的低延迟传输。无论您是想要在电脑上畅玩手游,还是需要进行应用测试,QtScrcpy都能提供专业级的解决方案。 ## 一、项目核心价值与独特优势 🚀 Qt

gitblog_00091的博客 849
上一篇: YUM软件维护利器
下一篇: Linux开发环境必备工具(命令篇)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值