nbc - Man Page

Compiler for LEGO Mindstorms NXT


nbc [options] file [options]


This manual page documents briefly the nbc command.

nbc is a program that compiles Not eXactly C (NXC) files  or NeXT Byte Code (NBC) files into programs that can run on the standard LEGO MINDSTORMS NXT firmware or the enhanced NBC/NXC firmware. The nbc  compiler can either save the compiler output to a file or upload it to a LEGO Mindstorms NXT for execution.  The compiler can also compile NXT Picture files (.ric) using the text-based RICScript  language.  Since nbc can compile different programming languages it uses the file extension to determine the type of code it is compiling. NXC programs should use the .nxc file extension, NBC programs should  use the .nbc file extension, and RICScript programs should use the .rs  file extension.



specify port name (COMn or usb), resource name, or alias


download program


treat input file as a binary file (don't compile it)


quiet mode


prevent the system file from being included


define macro <sym>


decompile program


turn on compiler optimizations


set maximum errors before aborting (0 == no limit)


set max preprocessor recursion depth (default == 10)


specify output file


write compiler errors to <filename>


search <path> for include files


save NXC intermediate NBC code to <filename>


generate code listing to <filename>


generate symbol table to <filename>


warnings off or on [default is on]


compiler status messages off or on [default is on]


enhanced firmware


NXC will wrap all function calls in Acquire/Release


dump the API to stdout


set the targeted firmware version (default == 128, NXT 1.1 == 105)


display command line options


nbc was written by John Hansen.

This manual page was written by Sebastian Reichel <elektranox@gmail.com>, for the Debian project (but may be used by others).


September 21, 2009