将 Kanzi 应用程序部署到 Linux¶
在您可以为目标平台构建 Kanzi 应用程序之前,请为目标平台设置和配置 Kanzi 构建环境。构建环境包括 Kanzi 构建系统用于为目标平台构建应用程序的工具。
在 Linux 上构建 Kanzi 应用程序的最方便方法是在 Linux 上进行构建。如果您有适用于 Windows 的 Linux 工具链,您可以在 Windows 上为 Linux 构建 Kanzi 应用程序。在这种情况下,将 Kanzi 构建脚本指向该工具链。
您可以在本机窗口系统不提供输入设备处理的 Linux 端口上配置 Kanzi 监听的输入事件设备。
请参阅 Linux 上的输入事件设备。
为 Linux 构建 Kanzi 应用程序。¶
SCons 在您运行 scons 命令的平台的配置目录中运行 SConstruct 文件。SConstruct 文件是构建应用程序的入口点,包含有关 Kanzi Engine 位置的信息,并运行这些文件:
<KanziWorkspace>/Engine/configs/platforms/common/config.py包括 Kanzi 库定义和在为所有平台构建时使用的通用构建标志。<KanziWorkspace>/Engine/configs/platforms/<PlatformName>/config.py包含 Kanzi 平台特定的构建标志和定义,以及工具链。当您想要自定义平台的构建配置时,请编辑此文件。例如,要匹配您的平台 SDK 和板级支持包的位置。<ProjectName>/Application/configs/platforms/common/config.py包含可选的、项目特定的通用配置参数。<ProjectName>/Application/configs/platforms/<PlatformName>/config.py包含可选的、项目特定的平台配置参数。
要为 Linux 构建 Kanzi 应用程序:
在 Kanzi Studio 中选择 File > Open Kanzi Command Prompt,并在 Kanzi Command Prompt 中,在您要构建 Kanzi 应用程序 (
<ProjectName>/Application/configs/platforms/<PlatformName>) 的平台的配置目录中。例如,要为 Linux 构建您的 Kanzi 应用程序,请在
<ProjectName>/Application/configs/platforms/linux_x11_glx_cpp98目录中打开 Kanzi Command Prompt。使用构建参数运行
scons命令以用于您的 Kanzi 应用程序。语法
scons <library> <type> <name>参数
library(可选) 图形库:
ES2使用 OpenGL ES 2.0 构建应用程序。GL用 OpenGL 构建应用程序。
type(可选) 构建类型:
Release使用启用编译器优化的方式构建应用程序。发布选项构建的文件比调试选项更小。使用此选项用于生产目的。默认值。Debug构建应用程序时禁用编译器优化,并包含可与调试器一起使用的完整调试信息。调试选项构建的文件较大,调试应用程序运行较慢。使用此选项用于开发目的。Profiling构建启用了编译器优化的应用程序,并将应用程序链接到 Profiling 构建。当您想要测量 Kanzi Engine 不同部分的性能时,请使用此选项。例如,当您想要了解 Kanzi 在应用程序启动期间不同任务上花费了多少时间,或者应用程序的哪些部分运行时间较长时。请参阅 测量应用程序性能。
name(可选) 项目的名称。
示例
// Builds the application with the default settings as specified // in config.py and SConstruct configuration files. scons
// Builds the debug version of the application with // the OpenGL graphics library. scons GL debug
// Builds the debug version of the application with the // OpenGL ES 2.0 graphics library from the Kanzi Studio // project named MyProject. scons ES2 debug MyProject
Scons 在
<ProjectName>/Application/output目录中构建 Kanzi 应用程序的源代码和二进制文件。