Building a monolith project

This tutorial will guide you through building a monolith INTEGRITY project for a Qt example application. You can select any Qt example application that uses the Supported Qt modules .

Before building the monolith INTEGRITY project, prepare your build environment by running the setEnvironment.sh script. For more information about the script, see Creating a shell script .

source ~/setEnvironment.sh
					

Building the Qt application

For building a Qt6 based application using the CMake tool, run the following commands in a terminal:

<Qt installation path>/qtbase/bin/qt-cmake <Qt example application path>/CMakeLists.txt
cmake --build .
					

Where, qt-cmake is the wrapper script that calls CMake to configure your project with appropriate include paths.

Building a monolith project

The board support package (BSP) for the Qualcomm Snapdragon 8155P board provides a build script to create a set of images for board partitions:

/work/ghs/sa8155/es7/es7_dev_env/hlos_dev_boot/apps/ghs_apps_proc/build_ghs.sh
					

Add a Qt application to a build by adding it into the monolith-service.int 文件:

  1. Start MULTI Launcher.
  2. 选择 组件 > Open Project Manager .
  3. Select the project file default.gpj under the /work/ghs/sa8155/es7/es7_dev_env/hlos_dev_boot/apps/ghs_apps_proc/qc_bsp 目录: "Select a project"

    MULTI application shows a window with a list of project files from the chosen folder.

  4. 选择 打开 .

In the MULTI Project Manager view, you should see a tree structure of the opened project.

Go through the default.gpj sub projects:

  1. 选择 target.auto vmm-adp-no-gvm-sa8155.gpj > vvm-adp-gvm-ref.gpj > monolith-service.gpj . You can observe the project structure and edit a project's files.
  2. 选择 monolith-service.int "Project tree"

    Selected monolith-service.int file is highlited in the project tree.

  3. Right-click on the file, then select 编辑 from the context menu.
  4. Add the following lines at the end of the file.
    AddressSpace
    Name    myappname
    Filename    /path/to/your/app/executable
    MemoryPoolSize 0x2700000
    Language    C++
    HeapSize    0x90000
    Task Initial
    StackSize    0x80000
    StartIt    false
    EndTask
    Extendedmemorypoolsize 0x300000
    EndAddressSpace
    							

    注意: Replace </path/to/your/app/executable> with a path to your application executable.

  5. Run the build script.
    bash /work/ghs/sa8155/es7/es7_dev_env/hlos_dev_boot/apps/ghs_apps_proc/build_ghs.sh
    							

Your monolith project is now ready to be flashed on to the board.