M7350/README

90 lines
4.6 KiB
Plaintext
Raw Normal View History

2024-09-09 08:52:07 +00:00
################################################################
# #
# The README of M7350 source code released for GPL #
# #
################################################################
This file includes:
I. Descriptions for released code.
II. Descriptions for main source directories.
III. Installation instructions
IV. Notes
I. Descriptions for released code
***********************************
Released code is mainly form www.codeaurora.org, the download url as follows:
https://www.codeaurora.org/cgit/quic/le/manifest/tag/?h=release&id=LNX.LE.3.1-21208-9x25
"oe-core/build/downloads" is created while compiling, it includes open source packages downloaded from the url specified in their bb file, we have downloaded them for you. The bb files of the open source packages introduced by us had been added into "meta-msm" directory.
II. Descriptions for main source directories
**********************************************
1. base: The directory includes source of software developed as part of
The Android Open Source Project.
2. bootable: It includes source of bootloader, recovery and some script
to generate ota image.
3. external: the open source of some modules used by android system.
4. hardware: part of HAL code opened by manufacturers.
5. kernel: The kernel source code directory.
6. oe-core: the OpenEmbedded-Core for code building, and "oe-core/build/downloads" directory includes most of the open source package used by M7350.
7. system: The underlying file system, applications and components.
III. Installation instructions
*******************************
1. Extract the GPL code, and best to build it on Ubuntu 12.04.
2. May need to install packages as follows:
sudo apt-get install build-essential chrpath coreutils cvs desktop-file-utils diffstat docbook-utils fakeroot g++ gawk gcc git git-core help2man libgmp3-dev libmpfr-dev libreadline6-dev libtool libxml2-dev libxml-parser-perl make python-pip python-pysqlite2 quilt sed subversion texi2html texinfo unzip wget libsdl1.2-dev xterm libncurses5-dev genisoimage
3. Script run by bash, so do it before building:
sudo ln -sf /bin/bash /bin/sh
4. Start to build image by command lines as follows:
cd oe-core
. build/conf/set_bb_env.sh (setting environment for building, must run firstly if you want to compile one package)
bitbake mdm-image
if it builds successfully, you can get the boot image and rootfs image in "oe-core/build/tmp-eglibc/deploy/images" directory.
if you want to build some package, you can run the following command:
bitbake (package name)
if you want to rebuild some package, you can run the following command:
bitbake (package name) -c cleansstate && bitbake (package name)
if you want to clean all the building product, you can run the following command:
buildclean
for example, to build uci, firstly, you can find the bb file for uci package in "oe-core/meta-msm/uci", now run the command line:
bitbake uci
and find the product in "oe-core/build/tmp-eglibc/work/armv7a-vfp-neon-oe-linux-gnueabi/uci*/image" directory
if you want to build kernel, you can run the command line:
bitbake virtual/kernel or bitbake linux-quilt
and find the product in "oe-core/build/tmp-eglibc/work/mdm9625-oe-linux-gnueabi/linux-quic-git-invalidgit-r5" directory.
IV.Notes
**********
1. The path of gpl code must not contain spaces, or else it will report bblayer.conf couldn't be found while building.
2. "oe-core/build/downloads" includes the open source package used by M7350, which had been downloaded by us, if you remove the *.done file, it will download again, so your computer must be able to surf the net. Most of open source package can be found from the websites as follows:
https://www.codeaurora.org/mirrored_source/quic/le/
https://www.codeaurora.org/mirrored_source/quic/qsdk/
3. Some private bb files are non-released, such as mdm-image.bb, kernel-tests.bb, but you can only build a minimal core image.
4. Add new open source package:
1) Add tar file of open source package into oe-core/build/downloads directory, and create a empty file named like this "package name + .done".
2) Add bb files to build it, you can reference the bb files in "meta-msm" directory.
5. the "conf/bblayer.conf" is generated by get_bblayers.py automatically when you run the command line:
. build/conf/set_bb_env.sh
6. some packages maybe depend on other private packages which aren't released.