# Build with QSC Launcher
Source: [https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html](https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html)
The following sections provide instructions to build Qualcomm Linux using the QSC
Launcher.
## Host machine requirements
Source: [https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html](https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html)
| Configuration | Tools | Permissions |
| --- | --- | --- |
| x86 machine | Git 1.8.3.1 or later versions | A `sudo` permission is
required to execute a few commands. |
| Quad-core CPU, for example, Intel i7-2600 at 3.4 GHz
(equivalent or better) | Tar 1.28 or later versions | A `sudo` permission is
required to execute a few commands. |
| 300 GB free disk space (swap partition >
32 GB) | Python 3.10.2 or later versions | A `sudo` permission is
required to execute a few commands. |
| 16 GB RAM | GCC 7.5 or later versions | A `sudo` permission is
required to execute a few commands. |
| Ubuntu 22.04 | GNU Make 4.0 or later versions | A `sudo` permission is
required to execute a few commands. |
| | | |
| | | |
| | | |
| | | |
## Install QSC
Source: [https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html](https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html)
There are two methods to install QSC:
- Using a GUI
- Using a CLI
### Install QSC using a GUI
Use the Qualcomm Software Center (QSC) GUI to install QSC.
1. Use your Qualcomm ID to log in to [https://softwarecenter.qualcomm.com](https://softwarecenter.qualcomm.com), then click **Download Software Center**. The QSC
Debian package (`.deb`) downloads to your machine.

2. Install the downloaded QSC Debian
package:
sudo dpkg -i /QualcommSoftwareCenterx.x.x.linux-x86.deb
# indicates QSC versionCopy to clipboard
### Install QSC using a CLI
1. Install curl (if not already
installed):
sudo apt install curlCopy to clipboard
2. Download the QSC Debian package:
cd
curl -L https://softwarecenter.qualcomm.com/api/download/software/qsc/linux/latest.deb -o qsc_installer.debCopy to clipboard
3. Install the Debian
package:
sudo dpkg -i qsc_installer.debCopy to clipboard
After a
successful installation, the message `Installed Qualcomm Software
Center vx.x.x successfully` is displayed.
## Use QSC Launcher
Source: [https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html](https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html)
Note: A one-time login is required into
[chipcode.qti.qualcomm.com](http://chipcode.qti.qualcomm.com/) to download Qualcomm proprietary git repositories.
Use your Qualcomm login credentials to complete this step.
1. To open the QSC desktop application, either launch **Qualcomm Software Center** from the **Applications** menu or run the following command
from the Linux
terminal:
/opt/qcom/softwarecenter/bin/softwarecenterCopy to clipboard
Note: For the Launcher workflow
to detect connected devices and flash software builds, ensure that the
Qualcomm Product Configuration Assistant Tool (PCAT) and Qualcomm USB Driver
(QUD) are installed on the host machine. Click **PCAT** to install PCAT
and **QUD** to install QUD as shown in the following image:

**Or**
Install PCAT and QUD using
`qpm-cli`:
qpm-cli --login
qpm-cli --install pcat --activate-default-license
qpm-cli --install qud --activate-default-licenseCopy to clipboard
The
`qpm-cli --help` command lists the help
options.
For Ubuntu 22.04, you may encounter an issue while
installing QUD where you are asked to enroll the public key on your
Linux host for a successful QUD installation. For more details, follow
the steps provided in the `signReadme.txt` file available
at the `/opt/QUIC/sign/` directory.
2. Use your Qualcomm ID to log in to the QSC desktop application. A dashboard page
appears as shown in the following figure:

- If you do not have a connected device, click **Start Launcher** on
the top panel to start the steps to configure, download, compile, and
flash Qualcomm Linux to your device.
- If you have a connected device, click **Start Launcher** for the
appropriate device in the **Connected devices** panel to download,
compile, and flash Qualcomm Linux to your connected device.
3. On the **Specify Environment**page, select the following values based on the build:
- Category: **IoT**
- Chipset: **QCM6490**
- Host OS: **Linux**
- Target OS: **LE**
Note: See [Release
Notes](https://docs.qualcomm.com/bundle/publicresource/topics/RNO-240626095531/) for all the supported
chipsets.

4. Click **Next**. The **Select Resources** page appears.
5. On the **Select Resources** page, perform the following steps:

1. In the **Base Workspace Path** text box, specify a directory path
where you want to download the software. You can click the select icon
to display the directory selection window.
2. Select product ID (For chipset QCM6490 and target OS LE,
**QCM6490.LE.1.0** is the product ID).
3. Select release ID (See the latest [Release
Notes](https://docs.qualcomm.com/bundle/publicresource/topics/RNO-240626095531/). For example, **r00218.1**).
4. Select the appropriate distribution to download. Distribution access is
controlled by access levels as listed in the following table:
Note: For more details
on the available distributions, see the **Access Controlled Distribution** table in the [Release
Notes](https://docs.qualcomm.com/bundle/publicresource/topics/RNO-240626095531/).
| **Access level** | **Distribution** | Yocto layers |
| --- | --- | --- |
| Public developer
(unregistered) | Base build: High-level operating system (OS) and
prebuilt firmware (GPS
only)
`Qualcomm_Linux.SPF.1.0|TEST|DEVICE|PUBLIC` | `meta-qcom`
`meta-qcom-hwe` |
| Public developer
(unregistered) | Base build + Qualcomm Intelligent Multimedia
Product (QIMP)
SDK
`Qualcomm_Linux.SPF.1.0|TEST|DEVICE|PB_QIMPSDK` | `meta-qcom`
`meta-qcom-hwe`
`meta-qcom-qim-product-sdk` |
| Public developer
(unregistered) | Base build + QIMP SDK + Qualcomm Intelligent
Robotics Product (QIRP)
SDK
`Qualcomm_Linux.SPF.1.0|TEST|DEVICE|RoboApiLnx` | `meta-qcom`
`meta-qcom-hwe`
`meta-ros`
`meta-qcom-robotics`
`meta-qcom-robotics-distro`
`meta-qcom-robotics-sdk`
`meta-qcom-qim-product-sdk` |
| Registered developer from a verified
organization | Base build: High-level OS and firmware source
(GPS
only)
`Qualcomm_Linux.SPF.1.0|AP|Standard|OEM|NoModem` | `meta-qcom`
`meta-qcom-hwe`
`meta-qcom-extras` |
| Registered developer from a verified
organization | Base build + QIMP
SDK
`Qualcomm_Linux.SPF.1.0|AP|Standard|OEM|NM_QIMPSDK` | `meta-qcom`
`meta-qcom-hwe`
`meta-qcom-extras`
`meta-qcom-qim-product-sdk` |
| Registered developer from a verified
organization | Base build + QIMP SDK + QIRP
SDK
`Qualcomm_Linux.SPF.1.0|AP|Standard|OEM|NM_QIRPSDK` | `meta-qcom`
`meta-qcom-hwe`
`meta-qcom-extras`
`meta-qcom-robotics-extras`
`meta-ros`
`meta-qcom-robotics`
`meta-qcom-robotics-distro`
`meta-qcom-robotics-sdk`
`meta-qcom-qim-product-sdk` |
| Licensed developer with additional
access | Base build: High-level OS and firmware (GPS only)
source
`Qualcomm_Linux.SPF.1.0|AP|Standard|OEM|` | `meta-qcom`
`meta-qcom-hwe`
`meta-qcom-extras` |
| Licensed developer with additional
access | Base build + QIMP SDK (GPS
only)
`Qualcomm_Linux.SPF.1.0|AP|Standard|OEM|QIMPSDK` | `meta-qcom`
`meta-qcom-hwe`
`meta-qcom-extras`
`meta-qcom-qim-product-sdk` |
| Licensed developer with additional
access | Base build: High-level OS and firmware (GPS and
modem)
source
`Qualcomm_Linux.SPF.1.0|AMSS|Standard|OEM|` | `meta-qcom`
`meta-qcom-hwe`
`meta-qcom-extras` |
| Licensed developer with additional
access | Base build + QIMP SDK (GPS and
modem)
`Qualcomm_Linux.SPF.1.0|AMSS|Standard|OEM|QIMPSDK` | `meta-qcom`
`meta-qcom-hwe`
`meta-qcom-extras`
`meta-qcom-qim-product-sdk` |
| | | |
| | | |
| | | |
The Qualcomm Linux Yocto layers are described in the following
table:
Table : Qualcomm Linux Yocto layers
| Yocto layer | Description |
| --- | --- |
| `meta-qcom` | Contains Qualcomm hardware support metadata with
upstream OSS software components. |
| `meta-qcom-hwe` | Contains Qualcomm hardware support metadata with
board support package (BSP) software
components. |
| `meta-qcom-extras` | Enables source compilation of select components,
which are otherwise present as binary in
`meta-qcom-hwe`. This layer is an
optional metadata layer for registered
users. |
| `meta-qcom-qim-product-sdk` | Provides Qualcomm's multimedia and AI SDKs based
GStreamer framework. It includes a set of GStreamer
plugin sample applications for multimedia and AI use
cases. |
| `meta-ros` | Contains a series of OpenEmbedded layers to add
support for the Robot Operating System (ROS) for
embedded Linux releases by the Yocto
Project. |
| `meta-qcom-robotics-distro` | Contains the configuration information needed to
generate the ROS image, including the package group
and image recipe. |
| `meta-qcom-robotics` | Contains the robotics recipes and the mechanism
to generate Robotics SDK. |
| `meta-qcom-robotics-extras` | Contains the proprietary robotics recipes that
are built with source. |
| `meta-qcom-robotics-sdk` | Contains the generation mechanism (package of
cross-compile toolchain, script, and function SDK)
and pick-up mechanism (necessary files from QIMP
SDK, QNN SDK, and QIRF SDK through
`config.json`) of Robotics Product
SDK. |
6. Click **Download** to download the selected software:

The **Download** page displays the download progress. Download progress
is also available in the top menu bar **Downloads** option in the Chip
Software section.
7. To start compilation after the
download completes, select **Compile** (depending on the size of the
downloaded software and host machine configuration, compilation may take a few hours):

8. To view the compilation progress of individual software images, expand the logs
panel as shown in the following figure:

On a successful build of the `qcom-wayland` distributions,
you can see the images at the following
path:
# system.img is present at the following path
/DEV/LE.QCLINUX.1.0.r1/build-qcom-wayland/tmp-glibc/deploy/images/qcm6490/qcom-multimedia-image/*Copy to clipboard
On
a successful build of the `qcom-robotics-ros2-humble` (QIRP)
distribution, you can see the QIRP SDK build artifacts at the following
paths:
QIRP SDK artifacts: /DEV/LE.QCROBOTICS.1.0.r1/build-qcom-robotics-ros2-humble/tmp-glibc/deploy/qirpsdk_artifacts/qirp-sdk_.tar.gz
# system.img is present at the following path
Robotics image: /DEV/LE.QCROBOTICS.1.0.r1/build-qcom-robotics-ros2-humble/tmp-glibc/deploy/images/qcm6490/qcom-robotics-full-image/*Copy to clipboard
Note: `` is the path that you select
on the Select Resources page.
Note: BitBake fetch errors are
typically intermittent fetch failures. Retry [step 7](https://docs.qualcomm.com/doc/80-70014-254/topic/build_from_source_qsc_gui_intro.html#concept_n2t_tjn_w1c__step_7) to work around these
intermittent errors. If the issue persists, see [BitBake Fetcher Error](https://docs.qualcomm.com/doc/80-70014-254/topic/troubleshoot_sync_build_and_flash.html#troubleshoot_sync_build_and_flash__do_fetch_error) for a solution.
9. To incorporate changes made after the compilation step is complete, click
**Retry** to recompile:

10. Click **Next** to flash software to the device.
### Flash
Note: Ensure that the device is in Emergency Download (EDL) mode before you flash the
software. For more information on how to force the device into EDL mode, see [Move to EDL mode](https://docs.qualcomm.com/doc/80-70014-254/topic/flash_images_unregistered.html#flash_images_unregistered__section_vgg_mly_v1c).
To flash software to the device with Launcher, perform the following steps:
1. With the device connected and in EDL mode, select the device on which you
want to flash the software as shown in the following figure:

2. Click **Flash on device**. The page updates and displays a progress bar
as Launcher begins flashing the software. Leave the device connected while
the software is being flashed.
3. To view logs, expand the logs panel as shown in the following
figure:

4. When the process is finished, *Flash Complete* and similar messages are
displayed on the page:

5. Click **Done**. To connect to the device, see [How to SSH](https://docs.qualcomm.com/doc/80-70014-254/topic/how_to.html#howto_setup__section_hmw_vsh_p1c_vinayjk_03-01-24-1110-45-279).
Last Published: Aug 07, 2024
[Previous Topic
Introduction](https://docs.qualcomm.com/bundle/publicresource/80-70014-254/topics/introduction.md) [Next Topic
Build with QSC CLI](https://docs.qualcomm.com/bundle/publicresource/80-70014-254/topics/build_from_source_QSC_CLI.md)