brians | a39ed32 | 2013-02-14 23:00:51 +0000 | [diff] [blame] | 1 | This file contains instructions on how to set up a computer to build the code. |
| 2 | |
jerrym | 1e9e180 | 2013-03-11 08:00:20 +0000 | [diff] [blame] | 3 | [OS] |
Brian Silverman | 9a76de0 | 2014-12-15 17:43:36 -0500 | [diff] [blame^] | 4 | Most of these instructions assume 64 bit Debian Wheezy. |
jerrym | 1e9e180 | 2013-03-11 08:00:20 +0000 | [diff] [blame] | 5 | |
brians | a39ed32 | 2013-02-14 23:00:51 +0000 | [diff] [blame] | 6 | [Install Packages] |
| 7 | First, you have to download and follow the directions in |
| 8 | <http://robotics.mvla.net/files/frc971/packages/frc971.list>. |
Brian Silverman | 9b7a684 | 2014-05-05 16:19:11 -0700 | [diff] [blame] | 9 | Then, run `apt-get install python3`. |
| 10 | The build script will tell you what other packages to install when you run it. |
| 11 | It's pretty smart about not checking for things it doesn't need, so you might |
| 12 | want to build 'deploy all' to see everything it wants. |
brians | a39ed32 | 2013-02-14 23:00:51 +0000 | [diff] [blame] | 13 | You will have to accept the |
Brian Silverman | 9b7a684 | 2014-05-05 16:19:11 -0700 | [diff] [blame] | 14 | "WARNING: The following packages cannot be authenticated!" warning for |
| 15 | various packages downloaded from our package repository. |
| 16 | This works for amd64 Wheezy, no guarantees or support for anything else. |
brians | a39ed32 | 2013-02-14 23:00:51 +0000 | [diff] [blame] | 17 | |
| 18 | [Running Locally] |
| 19 | If you want to be able to run the realtime code on your development machine |
| 20 | without just disabling the realtime part (set the AOS_NO_REALTIME environment |
Brian Silverman | 9a76de0 | 2014-12-15 17:43:36 -0500 | [diff] [blame^] | 21 | variable), follow the directions in //aos/config/aos.conf. |
| 22 | If you want to run the clang or gcc_4.8 amd64 code, add /opt/clang-3.5/lib64/ to |
| 23 | LD_LIBRARY_PATH. Using the system gcc-compiled versions should just work. |
michael | a91ebd9 | 2013-02-23 06:01:00 +0000 | [diff] [blame] | 24 | |
| 25 | [Compiling and Downloading] |
Brian Silverman | 9a76de0 | 2014-12-15 17:43:36 -0500 | [diff] [blame^] | 26 | Run //frc971/*/build.sh. |
Brian Silverman | 9b7a684 | 2014-05-05 16:19:11 -0700 | [diff] [blame] | 27 | Give it clean, tests, or deploy as a first argument to do something other |
| 28 | than just build. |
| 29 | Each action (build (the default), clean, tests, or deploy) has a different |
| 30 | default set of versions of the code it builds. You can change those by |
| 31 | passing another argument. Some popular ones are 'all' (build everything), |
| 32 | 'clang-amd64-none' (the most basic one for local testing), and |
Brian Silverman | 9a76de0 | 2014-12-15 17:43:36 -0500 | [diff] [blame^] | 33 | 'gcc_frc-arm-nodebug' (the one that gets downloaded). See its --help for |
Brian Silverman | 9b7a684 | 2014-05-05 16:19:11 -0700 | [diff] [blame] | 34 | more details. |
michael | a91ebd9 | 2013-02-23 06:01:00 +0000 | [diff] [blame] | 35 | |
| 36 | [Communicating with the cRIO] |
Brian Silverman | 9b7a684 | 2014-05-05 16:19:11 -0700 | [diff] [blame] | 37 | Use netconsole (in the amd64 outputs directories) to communicate directly with |
| 38 | the cRIO. |
michael | a91ebd9 | 2013-02-23 06:01:00 +0000 | [diff] [blame] | 39 | Use "reboot" from within netconsole.sh will reboot the cRIO. ^C will |
Brian Silverman | 9b7a684 | 2014-05-05 16:19:11 -0700 | [diff] [blame] | 40 | stop the netconsole program. "version" will tell you the the |
| 41 | VxWorks and WIND versions and "help" will give you a list of VxWorks |
| 42 | commands that you can use. |
| 43 | Make sure your computer is on the right subnet first. |