General
If this page does not solve your problem, the following people can help you with specific parts of the system:
- Hardware: Taylor Young, Alex Biddulph, Timothy Mullen, Shawn Hain
- NUbots codebase: Alex Biddulph, Trent Houliston, Taylor Young
- Toolchain and build: Alex Biddulph, Josephus Paye II
- NUClear: Trent Houliston
- NUsight: Brendan Annable, Josephus Paye II, Trent Houliston
- Mathematics: Ysobel Sims, Timothy Mullen
NUbots
Why am I having no such file errors?
If your compiler can't find FileWatcher.h as in the following error:
nuclear/roles/firmwareinstaller.cpp:3:10: fatal error: extension/FileWatcher/src/FileWatcher.h: No such file or directory 3 | #include "extension/FileWatcher/src/FileWatcher.h" | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Run ./b configure --clean. This refreshes the docker volumes, removing the offending file.
Why isn't my new file being compiled?
If you have just added a new file to the codebase, make sure that it's part of a role. After you have added it to a role, run ./b configure, and the build system should detect the new file and compile it the next time you run ./b build.
Why am I having CMakeCache errors when I run ./b <command>?
If you're having errors which say that there was no such value in b.cmake_cache such as in this snippet:
Traceback (most recent call last): File "/home/nubots/NUbots/nuclear/b.py", line 113, in <module> module.run(**vars(command.parse_args())) File "/home/nubots/NUbots/tools/utility/dockerise/run.py", line 79, in _run func(**kwargs) File "/home/nubots/NUbots/tools/run.py", line 34, in run use_asan = b.cmake_cache["USE_ASAN"] == "ON"KeyError: 'USE_ASAN'you might have a CMakeCache.txt file in your NUbots directory messing up the build's cache.
You can find and delete the file in your text editor, or by running the find command inside the NUbots directory:
# Make sure that you're in the NUbots project directory before executing this...find . -type f -name CMakeCache.txt -delete && find . -type d -name CMakeFiles -deleteIf the problem persists, try purging the build volume by running ./b configure --clean.
Note that purging the build volume means you'll have to rerun ./b build to use built code.
NUsight
TODO
Hardware
TODO
NUbook
Why is my newly added page not showing up?
When you add a new page, you should remove the Gatsby .cache and public folders, by running:
rm -rf .cache publicAnd then try building again:
yarn devWhy am I getting weird errors when I run yarn dev?
Usually this happens when there is a problem with one or more packages in the node_modules folder. Try deleting node_modules and running yarn to reinstall dependencies:
rm -rf node_modules && yarnThen try building again:
yarn devWhy am I getting errors from Prettier when running yarn dev? / Why can't I push to GitHub?
If a page you have added or changed is not formatted correctly, your changes may not show up in the NUbook preview, and you will not be able to push to GitHub.
To fix this, run:
yarn format --fixWhy are my changes not showing up in NUbook?
First, make sure you have saved the file, then refresh NUbook in the browser to see if your changes show up.
If you have created a new page or added a new image, you may need to remove the .cache and public folders. To do so, run:
rm -rf .cache publicAnd then try building again:
yarn dev