How to Load a Pros Template for V5

Noob here, be kind.

I want to get started with the PROS CLI, how do I get the file structure that I would get if I was using Vexcode pro(or at least something similar)? Is there a command I can use, or should I just make it myself? Or do I just create a .cpp file, and start programming away, and then when I build they get created?

1 Like

pros conduct new-project /path/to/project/folder will generate the files needed for a PROS project, including a template main.cpp file.


When I use that command, I get these errors:

Building project...

Creating cold package with libc,libm,libpros,okapilib [ERRORS]
/usr/lib/gcc/arm-none-eabi/11.2.0/…/…/…/…/arm-none-eabi/bin/ld: /usr/lib/gcc/arm-none-eabi/11.2.0/…/…/…/…/arm-none-eabi/lib/thumb/v7+fp/softfp/libstdc++.a(thread.o): in function std::this_thread::__sleep_for(std::chrono::duration<long long, std::ratio<1ll, 1ll> >, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> >)': /build/arm-none-eabi-gcc/src/gcc-11.2.0/libstdc++-v3/src/c++11/ undefined reference to sleep’
make: *** [ bin/cold.package.elf] Error 1
/usr/lib/gcc/arm-none-eabi/11.2.0/…/…/…/…/arm-none-eabi/bin/ld: /build/arm-none-eabi-gcc/src/gcc-11.2.0/libstdc+±v3/src/c++11/ undefined reference to `usleep’
collect2: error: ld returned 1 exit status

I might be missing a dependency. I installed arm-none-eabi-newlib as the tutorial says, and when I run it with the --version tag, and it returned the version (11.2.0), so it should be working, I’m just not sure why.

from time to time, new versions of the toolchain introduce extra syscall symbols that we need to define… As a temporary fix, you should be able to define a stub version of sleep and usleep (look up their signatures) in a c file (not cpp) and disable hot/cold linking