本文将会介绍如何在编译高通Liunx代码, 具体可以在高通 Linux | 高通下查看相关信息。
编译服务器配置
首先,准备一台Ubuntu 22.04版本主机或者服务器
1,编译Yocto 系统,需要如下一些配置
sudo apt update
sudo apt install repo gawk wget git diffstat unzip texinfo gcc build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint xterm python3-subunit mesa-common-dev zstd liblz4-tool locales tar python-is-python3 file libxml-opml-simplegen-perl vim whiptail
2,确认本地配置
sudo locale-gen en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
3,配置git
# 确认是否有配置过git config
git config --get user.email
git config --get user.name
# 如果没有配置过git config,你可通过如下方式配置你的信息
git config --global user.email <Your email ID>
git config --global user.name <"Your Name">
# 添加如下输出UI颜色
git config --global color.ui auto
# 添加如下git config,为了同步大型代码包或者避免不可靠的连接
git config --global http.postBuffer 1048576000
git config --global http.maxRequestBuffer 1048576000
git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999
同步代码列表
Yocto layers | Manifest release tag | Distribution (DISTRO) |
| Base build: High-level OS and prebuilt firmware (GPS only) qcom-6.6.28-QLI.1.1-Ver.1.1.xml | qcom-wayland |
| Base build + QIMP SDK build: qcom-6.6.28-QLI.1.1-Ver.1.1_qim-product-sdk-1.1.3.xml | qcom-wayland |
| Base build + Real-time kernel build: qcom-6.6.28-QLI.1.1-Ver.1.1_realtime-linux-1.0.xml | qcom-wayland |
| Base build + QIRP SDK build: qcom-6.6.28-QLI.1.1-Ver.1.1_robotics-product-sdk-1.1.xml | qcom-robotics-ros2-humble |
本文主要介绍关于QIMP SDK的编译,Qualcomm Intelligent Multimedia Product (QIMP) SDK在Qualcomm®Linux平台上的边缘开发人工智能和多媒体用例提供了一个统一的环境。QIMP SDK基于开源多媒体框架GStreamer。它提供了一个模块化、可扩展和可定制的环境来开发智能多媒体应用程序,如Edge AI盒子、相机、机器人和无人机。
编译 QIMP SDK 代码
1,下载高通Yocto
# 创建工作目录,编译主机最好有300G大小的空间,以防空间不足
mkdir <WORKSPACE_DIR>
cd <WORKSPACE_DIR>
repo init -u https://github.com/quic-yocto/qcom-manifest -b qcom-linux-kirkstone -m <manifest release tag>
# Example, <manifest release tag> is qcom-6.6.28-QLI.1.1-Ver.1.1.xml
repo sync
2,Clone QIMP SDK layer
git clone https://github.com/quic-yocto/meta-qcom-qim-product-sdk -b <qim-product-sdk release tag> layers/meta-qcom-qim-product-sdk
# Example, <qim-product-sdk release tag> is qcom-6.6.28-QLI.1.1-Ver.1.1_qim-product-sdk-1.1.3
编译QIMP SDK layer,需要如下配置
export EXTRALAYERS="meta-qcom-qim-product-sdk"
3,配置代码环境
MACHINE=qcm6490 DISTRO=qcom-wayland source setup-environment
# source setup-environment: 设置编译环境,然后创建 build-qcom-wayland目录,
# 运行完成后进入 build-qcom-wayland目录.
4,编译代码
bitbake qcom-multimedia-image
# Build SDK image
bitbake qim-product-sdk
编译完成后,可以在如下位置查看system.img是否生成
cd <workspace_path>/build-qcom-wayland/tmp-glibc/deploy/images/qcm6490/qcom-multimedia-image
ls -al system.img
最后可以通过QDL工具,将目录qcom-multimedia-image里的镜像下载到设备里,启动设备。
作者:高通工程师 戴忠忠