鸿蒙内核移植手册之 下载源码并编译

发布于 2020-9-17 17:44
浏览
1收藏

截取自:HarmonyOS内核liteos-a开发手册

 

第4篇 编译Liteos-a

 

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,以后可以直接使用。

 

若想了解更多内容,请点击https://harmonyos.51cto.com/posts/ids/?id=841去文末下载手册(PDF版)

 

课程链接:Harmony鸿蒙内核Liteos-a开发

 

已于2020-9-22 10:21:46修改
2
收藏 1
回复
举报
回复
添加资源
添加资源将有机会获得更多曝光,你也可以直接关联已上传资源 去关联
    相关推荐