Build one or more IDE projects


mkbuild -ws workspace [options]
mkbuild [-project] dir [options]
mkbuild -ws workspace -projects project1[,project2, …] [options]

Runs on:

Windows, Linux hosts


A full project pathname where one or more projects are built.
The name of the projects to build for one of the project types supported by the IDE: Makefile project, QNX project, Managed project, and Container project.
Stop on the first compile error.
Note: This option isn't valid for a full workspace build.

-targets target1[,target2…]
The make targets (the build, clean, rebuild or custom make target).
-variant variant
The build variant:
  • For a Managed project, the variant is the same as the configuration. If it's not assigned, the default is used.
  • For a QNX project, the variant is All, Enabled, or a platform/type (e.g. x86/release).
  • For a container project, the variant is any defined container configuration.
  • For a workspace, the variant isn't used. The default variant for each project is used.
  • For multiple projects, the defined variant for each project is used (the project must understand the variant).
Note: No spaces are allowed in project names, nor in the list of projects or targets.
-ws workspace
The name of the workspace.


The mkbuild utility builds one or more projects in the IDE workspace, producing the same results as an interactive build in the IDE. Building from the command line using mkbuild uses the IDE project setup, and it runs the IDE (without the GUI) to perform a build for specified projects.

Note: mkbuild doesn't work on QNX Neutrino hosts because the IDE isn't included on self-hosted QNX Neutrino systems.

Use QDE=path to override the default IDE installation location ($QNX_HOST/usr/qde.)

To build to a specified location, you must have write permission.

If a project doesn't support a target, the default target is built. By default, for make projects, no targets are defined; make targets have to be created from the GUI in order to use named targets.


Build a default target and variant for the project projectA:

mkbuild /home/user/workspace/projectA

Build all projects in a specified workspace:

mkbuild -ws /home/user/workspace

Build using another IDE installation:

QDE=/home/user/IDE4.7 mkbuild ... 

Build the projectA and projectB projects with clean, all targets, and the x86 variant/configuration:

mkbuild -ws /home/user/workspace -projects projectA,projectB -target clean,all -variant x86

Exit status:

All the specified projects were built successfully.
An error occurred.