Error upon code compliation using PROS CLI

Every time I run prosv5 make I am given a missing file error (Full error below)
The missing file seems to be within python. I have attempted to update python to the latest version, and completely reinstalling python, but these both had no effect.
I have attempted to uninstall the Pros CLI, ( pip uninstall c:/pros-cli ) but this returns an error
ERROR: You must give at least one requirement to uninstall (see "pip help uninstall")
Has anyone got a single clue how I could fix this problem (Or how can reinstall the CLI) .

C:\Users\programming\Documents\Robotics Locale\LiamBot>prosv5 make --debug --verbose
    INFO - pros.cli.common:callback - Debugging messages enabled
    DEBUG - pros:callback - CLI Version: 3.1.4
    INFO - pros.cli.common:callback - Verbose messages enabled
    INFO - pros.conductor.project:find_project - Found Project Path: C:\Users\programming\Documents\Robotics Locale\LiamBot\project.pros
    INFO - pros.conductor.project:find_project - Found Project Path: C:\Users\programming\Documents\Robotics Locale\LiamBot\project.pros
    ERROR - pros.cli.main:main - [WinError 2] The system cannot find the file specified
    Traceback (most recent call last):
      File "c:\pros-cli\pros\cli\main.py", line 47, in main
        cli.main(prog_name='pros', obj=ctx_obj)
      File "c:\users\programming\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 697, in main
        rv = self.invoke(ctx)
      File "c:\users\programming\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 1066, in invoke
        return _process_result(sub_ctx.command.invoke(sub_ctx))
      File "c:\users\programming\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 895, in invoke
        return ctx.invoke(self.callback, **ctx.params)
      File "c:\users\programming\appdata\local\programs\python\python38\lib\site-packages\click\core.py", line 535, in invoke
        return callback(*args, **kwargs)
      File "c:\pros-cli\pros\cli\build.py", line 23, in make
        exit_code = project.compile(build_args)
      File "c:\pros-cli\pros\conductor\project\__init__.py", line 386, in compile
        return self.make_scan_build(build_args) if scan_build else self.make(build_args)
      File "c:\pros-cli\pros\conductor\project\__init__.py", line 229, in make
        process = subprocess.Popen(executable=make_cmd, args=[make_cmd, *build_args], cwd=self.directory, env=env,
      File "c:\users\programming\appdata\local\programs\python\python38\lib\site-packages\sentry_sdk\integrations\stdlib.py", line 190, in sentry_patched_popen_init
        rv = old_popen_init(self, *a, **kw)  # type: ignore
      File "c:\users\programming\appdata\local\programs\python\python38\lib\subprocess.py", line 854, in __init__
        self._execute_child(args, executable, preexec_fn, close_fds,
      File "c:\users\programming\appdata\local\programs\python\python38\lib\subprocess.py", line 1307, in _execute_child
        hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
    FileNotFoundError: [WinError 2] The system cannot find the file specified
    We detected something went wrong! Do you want to send a report? [y/N]:

I’m not exactly sure what is causing the missing file error, but some googling led me to some cases of a similar problem in which Python wasn’t in the Windows Path. Check your Path variables to make sure Python is there.

In terms of uninstalling the PROS CLI, you shouldn’t need to specify the directory, but rather the package name. For example, for me (Running Linux Mint 20), when I run pip3 freeze (You should be able to run this command, but if not just do pip freeze) which shows all installed packages, PROS appears as pros-cli-v5, and running pip3 uninstall pros-cli-v5 worked correctly. Try running pip uninstall pros-cli-v5 (or maybe just pros-cli in your case) if you want to uninstall. Though, like you said, this issue probably isn’t a problem with PROS.

4 Likes

How did you install? The cli is trying to call Make and it isn’t finding it.

1 Like

I installed solely the CLI using instructions from Github. I cloned the CLI repo into my C drive, and ran pip install c:/pros-cli

It turns out python was indeed not on path. I have added both
C:\Users\programming\AppData\Local\Programs\Python\Python38\ and
C:\Users\programming\AppData\Local\Programs\Python\Python38\Scripts
to path (I found somewhere online that they are the directories I needed to add).
I then ran prosv5 make and got the exact same error. I assume this could be because neither address is correct but I cannot find what address is.

And thank you, yes I was passing the directory to uninstall the CLI and not the package name. running pip uninstall pros_cli_v5 worked perfectly.

2 Likes

Any reason you’re not using the Installer?

If so, then you need to install make, and arm-none-eabi-gcc, and what ever else we require.

3 Likes

I have not used the installer as I do not want the atom editor, I use VS Code.

What do you mean by

install make, and arm-none-eabi-gcc

?

If that’s your only reason for not using the installer, be aware that the installer gives you the option to not install Atom.

7 Likes

They’re various peace of software that we depend on. I recommend that you do as barin said and just use the installer without installing the editor.

1 Like

I’ll give it a shot.

After running the installer, everything works fine. (Yay)
Why would the CLI not include make, surely that is the most important function of the CLI?

No. Since you got the cli from github, it only includes the things needed to run only the cli. It’s kind of assumed that you know how to install make, gcc, and whatever else, or you already have them. The latter is common for linux and mac.

If you do want to package everything together, you might as well make it a one stop shop, and that’s the installer.

8 Likes