NAME¶
nbc - Compiler for LEGO Mindstorms NXT
SYNOPSIS¶
nbc [
options]
file [options]
DESCRIPTION¶
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.
OPTIONS¶
- -S=<portname>
- specify port name (COMn or usb), resource name, or alias
- -d
- download program
- -b
- treat input file as a binary file (don't compile it)
- -q
- quiet mode
- -n
- prevent the system file from being included
- -D=<sym>[=<value>]
- define macro <sym>
- -x
- decompile program
- -Z[1|2]
- turn on compiler optimizations
- -ER=n
- set maximum errors before aborting (0 == no limit)
- -PD=n
- set max preprocessor recursion depth (default == 10)
- -O=<filename>
- specify output file
- -E=<filename>
-
write compiler errors to <filename>
- -I=<path>
- search <path> for include files
- -nbc=<filename>
- save NXC intermediate NBC code to <filename>
- -L=<filename>
- generate code listing to <filename>
- -Y=<filename>
- generate symbol table to <filename>
- -w[-|+]
- warnings off or on [default is on]
- -sm[-|+]
- compiler status messages off or on [default is on]
- -EF
- enhanced firmware
- -safecall
- NXC will wrap all function calls in Acquire/Release
- -api
- dump the API to stdout
- -v=n
- set the targeted firmware version (default == 128, NXT 1.1 == 105)
- -help
- display command line options
AUTHOR¶
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).