最近一段时间忙于项目,所以一直没有更新。
今天周末有点时间,所以讲讲关于编译命令,一些编译的技巧吧。
我们去看github上的官网上,其实是有介绍如果编译,不过有点笼统。
就是一句:
PROJECT=Amlogic-ce DEVICE=Amlogic-ng ARCH=aarch64 DISTRO=EmuELEC make image
关于这个命令有什么具体的含义,我们如何理解,再现实的开发过程中如何去进一步简便编译?
首先,这里的大写字母都是环境传参数,PROJECT=,这里其实是一个项目的意思,在源码里面,我们不难发现是有一个project的目录下,里面有作者创建的各种项目,为了方便管理各个不同的项目,所以有了这个参数。
所以,PROJECT的可选有一下项目,真正来说是否支持,需要具体看了。
其次,就是DEVICE,通过字面也不难看出是设备的意思, 在每个项目下会有不同的设备。
比如官网的选择在project下Amlogic-ce里面有device,里面文件夹有Amlogic-ng
这里面就是属于这个项目且这个设备特定的bootloader,文件系统,等等。
关于第三个参数ARCH=,这是cpu的类型,那么有同学就会问,如何选这个参数呢,到底应该选什么,这个我们可以继续看源码里面的option选项。
路径:projects/Amlogic-ce/devices/Amlogic-ng/options
以上很明显,选择有arrch64,arm,其实就是适合的cpu类型架构,所以看我们自己的cpu来选择吧。
关于DISTRO的话,就是发行版的意思。关于这个参数选择,可以看源码下
./distributions/下的文件,主要有三个发行具体如下。
最后一个就是make image,这个其实就是linux下编译镜像的命令了,最后会在target下生成img。
今天暂时就先分析这么多了。后续有时间可以再写点其他的。
谢谢!