Ubuntu下编译源码

13015.交叉编译移植libz库 需要再app中使用压缩算法,不能直接移植gzip,gzip交叉编译得到gzip,应该使用libz代码。zlib-1.3.1 解压。进行编译生成libz库. 阅读详情

Build

1. Ubuntu系统安装

由于当前的android系统只能在linux环境编译,所以需要安装一个可以build的linux系统,如果对linux不是很熟悉,可以安装ubuntu desktop 64版本。
请参考官方文档或者网上资料安装desktop 64位版本

如果主要以windows为主要工作环境,可以在windows安装虚拟机软件(virtualbox或者vmware player),然后在虚拟机中安装ubuntu,然后在虚拟机中进行build。

建议安装ubuntu 16.04,下面所有操作基于16.04可以成功。

2. 编译Android需要的软件包:

openjdk-8-jdk git ccache automake lzop bison flex gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 g++-multilib python-networkx
libxml2-utils bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev squashfs-tools pngcrush schedtool dpkg-dev liblz4-tool make optipng maven bc
命令行如下:

$ sudo apt-get install openjdk-8-jdk git ccache automake lzop bison flex gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 g++-multilib \
    python-networkx libxml2-utils bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev squashfs-tools pngcrush schedtool dpkg-dev liblz4-tool make optipng maven bc

3. 下载源代码

下载源代码

4. 安装java

安装java

5. 编译android_v2系统

进入到android_v2目录
初始化android环境变量

$ source build.sh

设置java环境

$ export JAVA_HOME=/usr/lib/jvm/openjdk-7-jdk-amd64
    $ export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

如果从来没有build过android_v2,而且kernel.img也不存在,请执行下面的命令来build kernel。
进入到android_v2下面的kernel目录,执行下面的2个命令会生成kernel.img文件

make firefly-rk3288_defconfig
    make -j8 firefly-rk3288.img

开始编译,-j8是使用多少个线程来编译,看自己的电脑配置,比如4核8线程的机器可以使用-j8~-j16,同时tee ~/build.log是把build的输出保存到home目录的build.log

$ make -j8 2>&1 | tee ~/build.log

编译成功后,执行mkimage.sh来生成可以刷系统的文件,生成的文件在rockdev目录下。

$ ./mkimage.sh
Ubuntu下源码编译CodeBlocks Ubuntu下源码编译CodeBlocks SVN版本 阅读详情

相关推荐

ubuntu编译hotspot源码实践

最近看了不少jdk源代码和JVM相关知识,虽然有很多东西不是一次可以看懂的,理解的。但是可以多看几次,多模仿与实践,对于自己编码和理解来说,总是没多大坏处的吧。最近有时间,又想把《hotspot实战》看看,这些书籍似乎都是很多人强力推荐的啊(╯▔^▔)╯。。话说,逼格也高啊。不知道是不是那么神,所以,我要亲身实践看看,嘿嘿。第一次也许理解不是那么深,当自己代码量上来了,也许想起这些东西,就会有醍醐

DO NOT WORK HARD, WORK SMART :) 1904

zlib库源码编绎与使用

下载源码http://zlib.net 解压tar -zxvf zlib-1.2.11.tar.gz 进入目录cd zlib-1.2.11 新建文件夹mkdir build cd build 执行cmake cmake … 编绎与安装 make make install 编绎完成 Install the project… – Install configuration: “” – Installing: /usr/local/lib/libz.so.1.2.11 – Installing: /usr/loc

mei_true的博客 1393

Ubuntu下编译lua源码

本文首发在我的个人博客:https://jlice.top/p/6s16d/。欢迎大家前去参观,么么哒~ lua是门非常小巧的脚本语言,官网:lua官网。下载其源码后,解压: tar -zxvf lua-5.3.1.tar.gz 进入目录并make: cd lua-5.3.1/ make linux 报错: lua.c:80:31: fatal error: readline/readl...

文剑木然的专栏 777

zlib库剖析(2):编译及应用

1、编译zlib库     在Linux下编译比较简单,在源码包中的Makefile.in中有说明。要编译和测试,在命令行下输入./configure; make test,通常会生成静态库(.a)和共享库(.so,类似windows下面的.dll)。如果只想编译成静态库,用./configure --static。为了安装到/usr/local/lib/libz.*和/usr/local/in

Jack Zhou的专栏 1万+

libz-1.1.4.tar.gz

libz-1.1.4.tar.gz ,编译很多开源软件需要此库,缺少会报错

ESP32搭配LVGL显示图片的两种方法详解:内部存储 vs 外部文件

本文详细介绍了ESP32搭配LVGL显示图片的两种方法:内部存储与外部文件。内部存储方案适合快速响应的小图片,而外部文件方案则适用于需要灵活更新和大容量图片的场景。通过对比分析,帮助开发者根据项目需求选择最优方案,提升嵌入式系统的UI性能。

weixin_30399821的博客 519

ubuntu服务器编译源码

1,Vmware软件安装后 2,VMware-workstation-full-16.0.0-16894299.exe 3,新建虚拟磁盘,加载镜像文件 ubuntu-16.04.7-desktop-amd64.iso 参考VMware Ubuntu安装详细过程.txt相机过程 解压拷贝jws3288-7.1-code源码 1、编译android-7.1.2版本 1)要求 参考链接:https://source.android.google.cn/setup/build/requirements 需要jdk、

Android framework 955

7系列ZYNQ硬件调试:Vitis无法识别ARM DAP的排查与解决

本文针对7系列ZYNQ开发中Vitis无法识别ARM DAP的典型硬件调试问题,提供了系统性的排查与解决方案。文章深入剖析了问题本质,指出ARM DAP无法访问的核心原因在于PS部分的电源、时钟或复位等硬件基础条件未满足,并重点强调了PS参考时钟(如33.333MHz晶振)的完整性是关键排查点。通过从电源完整性、时钟与复位信号到JTAG连接与焊接的逐步硬件排查,并结合软件配置交叉验证,为开发者提供了清晰的故障定位思路与实战指南。

weixin_29280657的博客 628

zlib、libz、gzip和zip基础介绍

文章目录基本概念C或C++调用libz函数压缩和解压问题 基本概念 zlib:zlib是提供数据压缩用的函式库(源码包),由Jean-loup Gailly与Mark Adler所开发。源码下载地址:http://www.zlib.net/ libz:是编译或者交叉编译生成的函数库,名称为libz.a和libz.so (linux下) zip:ZIP文件格式是一种数据压缩和文档储存的文件格式。 gzip:最早由Jean-loup Gailly和Mark Adler创建,用于UNⅨ系统的文件压缩。 DEFL

mayue_web的博客 1万+

FreeFEM++下载安装和使用

最近要利用机器学习求解一些偏微分方程,对于一些复杂的偏微分方程,需要一些精度比较高的参考解,导师推荐了FreeFEM++软件。首次使用,特此记录一下,以备以后查阅。 1、FreeFEM++简介 FreeFEM是开源的有限元模拟系统,有法国利翁斯实验室、埃尔和玛丽居里大学共同开发,在世界范围内广泛使用。 2、FreeFEM++去何处下载? 下载地址:https://freefem.org/ 点击Download,然后会跳转到 https://github.com/FreeFem/FreeFem-source

夜晓岚的博客 1万+

STM32N6低功耗模式详解:从Sleep到VBAT的工程实践

低功耗模式是嵌入式系统能效设计的核心机制,其本质是通过动态调控CPU时钟、外设供电与电压域状态,在唤醒延迟、功能保留与静态电流之间实现最优平衡。基于Arm Cortex-M55内核的STM32N6采用多电压域架构(核心域/保持域/备份域/模拟域),支持Sleep、Stop、Standby及VBAT四级功耗分级,并深度融合DVFS(动态电压频率缩放)与外设时钟门控等关键技术。该设计不仅显著降低待机电流至亚微安级,更保障RTC持续计时、TCM内容可选保留、WKUP快速唤醒等关键能力,广泛应用于电池供电的AIoT

weixin_36369848的博客 245

Qt源码编译-Ubuntu平台

操作系统: Ubuntu20系统内存: 32GQt版本: 5.15.15通过上述步骤,你可以在 Ubuntu 平台上成功编译并安装 Qt 源码。编译 Qt 虽然耗时较长,但这也让你可以灵活定制功能模块,适应不同的开发需求。如果你在编译过程中遇到问题,可以参考 Qt 官方文档或社区论坛来寻找帮助。

二月上的博客 3283

【第一章】基于Simulink的控制器开发教程——目录

摘要:本文系统介绍了基于Simulink的控制器开发方法,涵盖PID、状态反馈、模型预测(MPC)、模糊控制、自适应控制等8类主流控制器。针对每种控制器,详细阐述了其基本原理、适用场景,并通过Simulink建模与仿真测试进行实践验证。文章采用"理论+实践"的结构,从算法设计到硬件实现全流程展开,为汽车、航空航天、工业控制等领域的控制器开发提供完整解决方案,最后通过应用对比与学习总结帮助读者掌握不同控制器的核心特性和应用场景。(149字)

熟悉MATLAB/fpga/RK3588/LABVIEW/protus/单片机/dsp/Multisim 394

ubuntu下编译tinyhttp源码

Tinyhttp源码编译1.官网源码下载2.修改makefile文件:3.修改htdoc/.cgi文件4.编译运行 1.官网源码下载 下载 修改httpd.c文件如下: /* J. David's webserver */ /* This is a simple webserver. * Created November 1999 by J. David Blackstone. * CSE 4344 (Network concepts), Prof. Zeigler * University of

107 1万+

硬件知识点-----SPI串联电阻、振铃、过冲

电阻取值,没有公式,一被传输线的特征阻抗为50欧姆左右,而TTL电路输出电阻大桃为13欧姆左右,在源端串一个33姆,大致和50相当,这样就可以柳制从终端反射回来的倍号,防止再次反射。传输时间tp=L/V,其中L是导线长度,V是电磁波在电路板中的传输速度V=C/sqrDk,其中Dk是光速衰减因子,对于电路板而言是铜线,Dk=4电磁波在电路板中的速度都是慢于光速的。实际上串联多大的电阻与传输线的阻抗有关,为了保证阻抗的连续性,如果传输线的特性阻抗 Z0与驱动源的输出阻抗 Zd不匹配,会引发信号的反射。

贾saisai的博客 2724

基于深度学习的AI生成式人脸图像鉴别

AIGC(AI内容生成)技术的快速发展确实为创作者提供了高效生产力工具,但同时也引发了一些问题和挑战。这些技术可以生成以假乱真的图像、视频换脸等,给不法分子提供了滥用的机会。其中,一些不法分子可能利用AIGC技术制造虚假新闻、违反版权、绕过活体身份验证、散布谣言和诽谤他人、进行敲诈勒索等非法活动,以谋取不当利益。这些行为给社会造成了严重的负面影响,破坏了信息的真实性和可信度。因此,我们需要认识到AIGC技术的潜在风险,并采取相应的措施来应对。

mingo_敏 4498

Ardupilot源码编译--Ubuntu

Ardupilot源码编译–Ubuntu 1. Git安装 sudo apt-get update sudo apt-get install git sudo apt-get install gitk git-gui 1.1. 克隆Ardupilot存储库 git clone https://github.com/ArduPilot/ardupilot cd ardupilot git subm...

xuan_liu123的博客 4057

livox雷达斜装修改

指的是,使用外部的陀螺仪的话,雷达到外部陀螺仪的转换,而mid360的陀螺仪是内置在360里面的,且方向和点云方向是一致的,所以不能通过修改此处去改变陀螺仪方向。同时livox_ros_driver2中的MID360_config.json里面的。这里面的外参,只能改变点云相对陀螺仪的位姿,而不能将陀螺仪映射到你期望的倾斜角度。fast_lio中的mid360.yaml中的外参。

z1872385的博客 2713

下载源码包后在Ubuntu编译

下载源码包后在Ubuntu编译

m0_64730542的博客 1638

Statistics and Machine Learning Toolbox

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

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Ubuntu - Android源码编译

Windows下安装Ubuntu系统 压缩卷--删除最后一个分区来安装Ubuntu --下载easybcd,Add new entry -- Neogrub -- install --Configure,弹出文件 -- 填入 title Install Ubuntu root (hd0,0) kernel (hd0,0)/vmlinuz boot=casper iso-scan/file

小神 2348

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Ubuntu下载源码并编译

本文章将介绍如何在Ubunt下进行Linux源码下载,并进行简单的编译步骤。 1、下载linux源码 先查看对应的Ubuntu对应版本源码 $ sudo apt-cache search linux-source 查看Ubuntu的源码版本相关信息 $ uname -a 使用命令下载对应的源码并解压到用户工作目录 $ sudo apt-get i...

weixin_30877181的博客 2597

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

详解深谈Ubuntu编译源码包

对于绝大多数软件,我们建议您使用APT系统来安装它。在少数情况下,例如某软件没有以deb包的格式发布,或者您需要定制适合自己的软件,您可以通过Ubuntu编译源代码的方式安装它。   首先您需要下载软件的源码包,并且将它解包为一些源代码文件。并了便于管理,我们建议您将下载的源码包移动到“/usr/local/src/”目录下,并在这里解包。  sudo mv xxx.tar.gz /u

3118

LLVM在Ubuntu下用CMake进行源码编译

LLVM的源码在Ubuntu系统的编译和一些踩坑记录,内存和核心很重要,WSL不一定够用;耗时很长;

Topsort的博客 1056

ubuntu系统源码编译clang

本文主要介绍了ubuntu系统源码编译clang,主要问题就是gcc需要更新的问题。

m0_51661400的博客 2125

Ubuntu 18.04 ROS 源码编译

Ubuntu 18.04 ROS 源码编译环境准备下载源码安装依赖编译检查更新 环境准备 如果你已经安装过二进制的ROS,可以跳过环境准备步骤 如果没有,请按照以下步骤进行 打开终端,输入 以下代码代码 sudo apt-get install python-rosdep python-rosinstall-generator python-vcstool python-rosinstall build-essential sudo rosdep init rosdep update 下载源码 新建一个工

weixin_43563233的博客 2586

ubuntu18 编译 Android 源码

1.repo工具下载及安装 mkdir ~/android-repo cd ~/android-repo git clone https://aosp.tuna.tsinghua.edu.cn/git-repo/ chmod a+x git-repo/repo 然后添加repo(路径目录如:~/git-repo/repo)到PATH环境变量 export PATH=~/git-repo:$PAT...

u010725842的专栏 907
上一篇: linux下命令
下一篇: 持续更新linux下遇到的问题。
androideveloper
博客等级 码龄12年 21粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值