ardupilot/README_waf.txt

53 lines
1.4 KiB
Plaintext
Raw Normal View History

2015-10-09 11:03:59 -03:00
To keep access to waf convenient, use the following alias from the
2015-12-07 16:04:33 -04:00
root ardupilot directory:
2015-10-09 11:03:59 -03:00
2015-12-07 16:04:33 -04:00
alias waf="$PWD/modules/waf/waf-light"
2015-10-09 11:03:59 -03:00
2015-12-07 16:04:33 -04:00
Waf should always be called from the ardupilot's root.
2015-10-09 11:03:59 -03:00
Differently from the make-based build, with waf there's a configure step
to choose the board to be used
# Configure the Linux board.
waf configure --board=linux
2015-12-07 16:04:33 -04:00
by default the board used is 'sitl'.
2015-10-09 11:03:59 -03:00
To build, use the 'waf build' command. This is the default command, so
calling just 'waf' is enough
# From the root ardupilot directory, build everything.
waf
# Waf also accepts '-j' option to parallelize the build.
waf -j8
2015-12-07 16:04:33 -04:00
It's possible to build for just a vehicle or an example by specifying it as the
target:
2015-10-09 11:03:59 -03:00
# From the top directory
waf --target ArduCopter
2015-10-09 11:03:59 -03:00
# List all the targets available
waf list
By default all the files produced by the build will be inside the build/
subdirectory. The binaries will also be there, with the name identifying
the target board.
To clean things up use
# Clean the build products, but keep configure information
waf clean
# Clean everything, will need to call configure again
waf distclean
using git to clean the files also work fine.
2015-12-07 16:04:33 -04:00
There's also a make wrapper called "Makefile.waf". You can use
`make -f Makefile.waf help` for instructions on how to use it.
2015-10-09 11:03:59 -03:00
TODO: Add explanation on how the build system is organized once we
settle down.