第一章 下载源码并编译

1.1 在Ubuntu中安装开发环境

如果你是从头看文档,并且按照文档操作,那么你已经按照《5.2 安装Ubuntu软件》下载并运行了这个脚本:Configuring_ubuntu.sh。如果你是中途看文档,那么请按照《5.2 安装Ubuntu软件》操作一次。

这个脚本在鸿蒙发布之后又更新了,对于我们的老学员,也需要从新下载、执行它。

下面解析一下这个脚本。

首先,它会做一些检查,然后列出一个菜单供你选择:

在这个菜单里,你可以选择这三项之一:

其实第一项包含了第二项,无论你是开发鸿蒙还是Linux,都可选择第一项。

假设你选择了第一项,该脚本会执行下面的函数:

从上图中各个函数的名字就可以知道,它会做这些事情:设置Ubuntu软件源、安装通用的软件(比如GCC、manual手册)、安装Linux开发软件(比如NFS、SAMBA)、安装鸿蒙开发软件(比如llvm)。

1.2 下载、编译鸿蒙内核Liteos-a

本节要做的事情是:配置GIT、安装repo(repo是用来管理多个git仓库的)、下载源码、编译。

1.2.1 配置GIT

需要在ubuntu下执行如下命令来配置GIT客户端的用户信息,比如(下面命令的用户名、邮箱可以随便写):
git config --global user.name "100ask"
git config --global user.email "weidongshan@qq.com"
git config --global credential.helper store

1.2.2 安装repo

repo工具是用来管理多个GIT仓库的命令,执行如下命令来安装:

curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > repo
sudo cp repo  /usr/local/bin/repo && sudo chmod a+x /usr/local/bin/repo
sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple requests

1.2.3 下载源码

执行以下命令下载:

cd /home/book
mkdir  openharmony
cd  openharmony
repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony-1.0
repo sync -c -j8

注意:鸿蒙内核经常更新,我们讲课时必须锁定某个版本,作为鸿蒙先行者,我们目前使用最先出现的“OpenHarmony-1.0”。别被“1.0”误导了,它内核在GITEE里的分支版本,同属“鸿蒙2.0”。

同步完成后提示

1.2.4 编译官方版本

我们先为官方板子hi3518ev300编译Liteos-a,确保环境没有问题。后面再打上IMX6ULL的补丁,为IMX6ULL编译鸿蒙。
进入源码根 目录,执行以下命令:

cd  /home/book/openharmony
python build.py ipcamera_hi3518ev300 -b debug

等待一会,结果如下:

我们不打算使用hi3518ev300,上述命令只是为了确定开发环境没问题。

并且rootfs.tar中有很多库,比如libfreetype.so,以后可以直接使用。

全文下载技术交流群(鸿蒙开发/Linux/嵌入式/驱动/资料下载)QQ群:869222007

ubuntu编译内核_鸿蒙源码下载并编译相关推荐

  1. 《深入理解Android内核设计思想(第2版)(上下册)》之Android源码下载及编译

    本文摘自人民邮电出版社异步社区<深入理解Android内核设计思想(第2版)(上下册)> 购书地址:http://item.jd.com/12212640.html 试读地址:http:/ ...

  2. 《深入理解Android内核设计思想(第2版)(上下册)》之Android源码下载及编译...

    本文摘自人民邮电出版社异步社区<深入理解Android内核设计思想(第2版)(上下册)> 购书地址:item.jd.com/12212640.ht- 试读地址:www.epubit.com ...

  3. ros源码下载及编译

    Ros1 源码下载及编译 准备工作 Setup your sources.list Setup your computer to accept software from packages.ros.o ...

  4. Android12 源码下载、编译、刷机、单编调试Framework

    文章目录 说明 1. 代码下载 1.1 下载Repo工具 1.2 安装和配置Git 1.3 创建工程目录 1.4 初始化Repo仓库 1.5 同步代码 2. 驱动下载 2.1 下载对应机型的驱动 2. ...

  5. Android 4.0.1 源码下载,编译和运行

    [牛人分享]Android 4.0.1 源码下载,编译和运行 转自 http://blog.csdn.net/rambo2188/article/details/6943382 ----------- ...

  6. Centos7下RTL8188eu USB无线网卡(TP WN725N) 驱动源码下载和编译步骤

    Centos7下RTL8188eu USB无线网卡TP WN725N 驱动源码下载和编译步骤 一 准备编译环境 二 下载源代码 三 编译和安装 四 启用8188euko Centos7下RTL8188 ...

  7. uboot源码下载以及编译

    环境:ubuntu 20.04 uboot源码下载以及编译 1 uboot源码下载: 1.1 进入uboot官网 1.2 下载源码 2 编译uboot 2.1 配置 2.2 编译 2.2.1 确认编译 ...

  8. VLC for Android源码下载和编译

    Project Hosting on 点击打开链接 最受欢迎的开源项目 点击打开链接 由Android的核心开发团队提供了15个优秀的示例项 目,包含了游戏.图像处理.时间显示.开始菜单快捷方式等. ...

  9. WebRTC源码下载与编译

    WebRTC源码编译 1 几种源码下载方案对比 1.1 拉别人下好的代码 1.2云服务器 1.3 国内镜像 1.4 挂代理(推荐) 2 源码编译环境准备 2.1 环境要求 2.2 代理服务器配置 2. ...

最新文章

  1. MIT博士生、北大校友,利用自监督算法,解决了数据集中这一常见的“难题”...
  2. 16 开机自动登录脚本_创建计划任务自动运行程序---运维无人值守
  3. 如何用好消息推送(JPush)为app拉新、留存、促活
  4. java删除第一个节点_访问单个节点的删除(Java)
  5. 白话Elasticsearch55-数据建模之对每个用户发表的博客进行分组 (Top Hits Aggregation)
  6. Flask实战2问答平台-问答详情完成
  7. php递归面包屑,php可应用于面包屑导航的递归寻找家谱树实现方法
  8. php v-for=,Vue中v-for循环节点的实现代码
  9. mysql 写入慢_MySQL主从,你遇到过哪些问题?
  10. 英特尔:把基带卖给苹果 完全是高通逼的
  11. Spring中采用公共变量并发问题解决
  12. 数据分析这么做,销售看了拍手叫好
  13. 那些年,我们一起做过的KNX智能化控制经典案例!
  14. android打开xlsx文件,如何在Android中打开.xlsx文件?
  15. redhat linux系统下查看Emulex HBA卡基本命令
  16. 你真的懂Java怎么输出Hello World吗?
  17. JS在H5下实现本地历史搜索记录
  18. python的内存管理
  19. TEEOS的实例-在线支付系统
  20. 如何判断是否适合学编程?

热门文章

  1. MNIST数据可视化
  2. 年轻——塞缪尔.厄尔曼
  3. 秒懂 QPS、TPS、PV、UV、IP!
  4. 坦克大战 - 设计模式、BIO、NIO、AIO、Netty
  5. C++ 流体效果的实现
  6. ES6中的新特性:Iterables和iterators
  7. JDK14性能管理工具:jmap和jhat使用介绍
  8. 在linux服务器上安装Jenkins
  9. Spring系列之bean的使用
  10. 30分钟学玩转RabbitMQ