Before you can build your hypervisor system in an HHBSP, you must specify your target board and the locations of your host and guest BSPs.
The instructions below are for setting variables needed specifically for building a hypervisor host. They assume that you have already sourced the environment variables for your QNX SDP 7.0.4+ or QOS 2.1 work environment (sourced qnxsdp-env.sh).
To configure a build for a hypervisor host, you must:
In its images/ directory, the HHBSP includes the configure.mk configuration file. You can use this file to specify values for the make variables used by your build. If you use the QNX Momentics IDE, you can open this file and modify it. You can also use the command line to set the variables.
If you are are using the command line, you can set environment variables with the same names as the variables in configure.mk. If you set an environment variable in this manner, its value persists and overrides the value for the corresponding make variable specified in configure.mk.
Note the following about using the BOARD_* variables:
The variables specified in the configure.mk are used only when you run make for your build (i.e., they don't persist).
Therefore, if you will use environment variables in instructions outside of the HHBSP build proper (e.g., -d $BOARD_SPECIFIC_BSP_LOCATION), you must specify these environment variables in the command line, even if you will use the default values specifed in the configure.mk file.
Remember:
If you are working in the HHBSP framework, the only variable you need to specify (other than those you set when you set your QNX SDP 7.0 or QOS 2.1 work environment) is BOARD_SPECIFIC_BSP_TYPE. You can set this variable as a make variable in configure.mk, or as an environment variable via the command line. Set it to one of the following values:
Board | BSP type | Notes |
---|---|---|
Intel Gordon Ridge MRB | 0 | QNX Hypervisor 2.0 only (deprecated) |
Renesas R-Car H3 | 1 | |
Intel Broadwell NUC 5i5 | 2 | QNX Hypervisor 2.0 only (deprecated) |
Any other compatible x86 board | 3 | |
Any other compatible ARM board | 4 | |
For future use | 5 | |
For future use | 6 | |
Intel Supermicro Denverton x86 | 7 |
For example, if you are working with Renesas R-Car H3 board, you can edit the configuration file, or use the command line to set the BOARD_SPECIFIC_BSP_TYPE variable before you build, as follows:
# export BOARD_SPECIFIC_BSP_TYPE=1
Since you are not likely to change boards very often, it may be convenient to set this variable in the configure.mk configuration file.
You must specify the BSP type; there is no default value, either in the command line or the configuration file.
If you are using default locations in the HHBSP, you don't need to set any other variables.
If you aren't using the default locations in the HHBSP framework, you must set the BOARD_SPECIFIC_BSP_LOCATION variable to the relative or absolute path to the location of your board-specific BSP. For example, if you have put your board-specific BSP into ~/qos21/bsp/mybsp/, point to that location:
# export BOARD_SPECIFIC_BSP_LOCATION=~/qos21/bsp/mybsp
The default location is ./images/host_bsp/.