qnx bsp

如何使用bsp

1.在 Linux , Mac 或 Windows 主机系统上安装 QNX 软件开发平台 (SDP)。

2.将所需的电缆连接到目标板,并配置主板 DIP 开关.

3.将可引导操作系统映像传输到目标平台。

4.启动主板,确认 QNX Neutrino RTOS 正在主板上运行。

注:在开始使用 BSP 之前,您可能需要查看主板硬件和启动加载程序的文档。 此信息通常由主板供应商提供。 每个 BSP 用户指南在可能的情况下都包含一个指向供应商网站或第三方网站的链接,您可以在该网站上找到有关主板硬件和固件的一般信息。

如何下载提取BSP

1. 从qnx software center下载bsp包

2.解压zip文件

3.导入到IDE中,这样就可以查看下载的bsp包的目录了。

BSP包的结构和内容

bsp目录:

qnx bsp_第1张图片

/images

BSP 生成后的 BSP 默认生成文件

生成任何引导映像 (如 IFS 映像, IPL 二进制文件等)

/install
/install 目录为空,直到生成 BSP。 发生这种情况时, /prebuilt 目录的内容将复制到 /install 目录中。
生成 IFS 映像时, /install 目录是 IFS 生成进程扫描 BSP 内置文件中指定组件的第一个位置。 如果 IFS 生成进程在 /install 目录中找不到组件,它会扫描该组件的 QNX SDP 的 /target 目录。

如果新增模块,在模块src目录中make install时需要将生成的模块拷贝到install目录。因为ifs生成时会扫描install目录的模块。

/prebuilt

/prebuilt 目录包括所有 BSP 组件,预构建且随时可用。 构建 BSP 时, /prebuilt 目录的内容将复制到 BSP 的 /install 目录中 (请参见下面的“ prebuilt 二进制文件和库”)。

/src.
src 目录包含 BSP 附带的所有源代码。 源代码被组织到子目录中,如 /hardware , /lib , /utils 等。 构建 BSP 后, BSP 中的所有源代码 (包括这些子目录中的代码) 都将被构建。

下表显示了常用 BSP 组件的默认位置。 ${BSP_ROOT_DIR} 是提取 BSP 包的目录的名称。 ${CPU_VARILE} 是开发此 BSP 的特定 CPU 架构 (例如 x86_64)。

File Location
Prebuilt OS image ${BSP_ROOT_DIR}/images
IPL and/or startup binaries ${BSP_ROOT_DIR}/install/${CPU_VARIANT}/boot/sys
Source code for device drivers, libraries, and utilities

${BSP_ROOT_DIR}/src/hardware/…

${BSP_ROOT_DIR}/src/lib/…

${BSP_ROOT_DIR}/src/utils/…

Prebuilt libraries

${BSP_ROOT_DIR}/prebuilt/${CPU_VARIANT}/lib/dll}

${BSP_ROOT_DIR}/prebuilt/${CPU_VARIANT}/usr/lib}

Prebuilt binaries

${BSP_ROOT_DIR}/prebuilt/${CPU_VARIANT}/sbin

${BSP_ROOT_DIR}/prebuilt/${CPU_VARIANT}/bin

${BSP_ROOT_DIR}/prebuilt/${CPU_VARIANT}/usr/bin

Generic header files (not architecture-specific) ${BSP_ROOT_DIR}/install/usr/include

预构建的二进制文件和库随 BSP 打包,而不管这些组件的源代码是否也包括在 BSP 中。 从 QNX SDP 6.6 开始, QNX 为所有 BSP 组件 (设备驱动程序,库,实用程序等) 提供预构建的二进制文件和库。

BSP 的 /images 目录包括一个预构建的 QNX IFS 映像。 这种预构建的 IFS 映像使您可以快速验证 QNX OS 在目标板上的操作,只需将预构建的映像直接传输到目标,而无需先构建 BSP。

由于在构建 BSP 时,此预建图像被新的 IFS 覆盖,因此您可能需要制作预建图像的副本以供将来参考。 如果您忘记制作预构建映像的副本,可以通过将 BSP 从原始 .zip 存档文件解压到新目录中来恢复该映像。

BSP Makefile

每个 BSP 的基本目录中都有一个 Makefile ,而子目录中也可以有其他 Makefiles。

Makefile 中的大多数目标都是板特定的。 有关每个电路板的目标列表,请参阅您所使用的 BSP 用户指南中的“构建 BSP (命令行) ”部分。 BSP 中的 Makefiles 通常在 Makefile 中定义这些目标:

all

运行 Makefile 中的所有目标。

如果未指定目标,请默认设置此目标。

clean

删除所有 IFS 图像。

某些 BSP 可能已经配置了多个可能的目标映像。 例如, x86_64 BSP 包括一个 Makefile ,用于定义支持屏幕图形子系统的目标图像,以及不支持屏幕的目标图像。 BSP /images 目录中的 Makefile 定义了多个目标,因此您可以生成一个或两个映像:

all
调用两个目标。
IFS-target
调用不带屏幕支持的内部版本,其中目标是您的平台的名称 (例如 x86_64 通用)。
ifs-target-graphics
调用带有屏幕支持的内部版本,其中目标是您的平台的名称 (例如 x86_64 通用)。

Building a BSP

解压zip文件后,就可以在解压的目录下使用make build了。注意sdp目录是不会被覆盖的,所以生成文件都是在zip解压的目录下。

build步骤:

1.要运行环境变量:qnxsdp_ver-env.sh

2.在bsp包解压根目录make clean

3.在根目录make

  • 构建 BSP 并创建其目录   
  • 将 IFS 图像放置在 /images 目录中

注:推荐在根目录使用make,如果手动使用mkifs,需要在后面跟上相应的参数,比如-r,指定二进制文件的目录。

IPL

Startup Programs

Kernel Callouts

Systen Page

OS images

OS image Buildfiles

IPL  Library

startup Library

你可能感兴趣的:(qnx)