Windows (non mingw): "the system cannot find the path specified: `picotool/build/rp2350_otp_contents.json`"

Open
#145 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
cmake, cpp

Research direction

Start with CMakeLists.txt and the generate_otp_header.vcxproj custom-build failure shown in the Visual Studio output. Reproduce the configuration with the Visual Studio 17 2022 generator and inspect the rp2350_otp_contents.json generation step; done means the Windows build completes without the missing-path error.

Written by the indexing model from the issue text.

Description

For context (and I'm not sure this is right) but I was hoping to avoid having to constantly unplug and plug my pico when trying to run/flash rust programs on my pico w. I don't know much about windows C compilation or any of this.

But it seems like, from reading the doc of picotool reboot that this would make it easier to reboot the pico into a flashable state.

I am trying to build picotool. I am using the vcpkg LIBUSB and I should note I'm also compiling with

C:\Users\anand\src\embedded\picotool\build>cmake -G "Visual Studio 17 2022" -A x64 -DPICO_SDK_PATH=C:\Users\anand\src\embedded\pico-sdk ..

Since I was getting a bunch of errors trying to just do the following (as the readme states):

mkdir build
cd build
cmake -G "NMake Makefiles" ..
nmake

I got quite far into the build (I think) but I ran into the following failure which I am having trouble debugging

  Configuring rp2350.rom.h
  Configuring xip_ram_perms_elf.h
  Building Custom Rule C:/Users/anand/src/embedded/picotool/CMakeLists.txt
  Generating C:/Users/anand/src/embedded/picotool/build/rp2350_otp_contents.json
  The system cannot find the path specified.
C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(254,5): e
rror MSB8066: Custom build for 'C:\Users\anand\src\embedded\picotool\build\CMakeFiles\6a64e9599d387ae51b1ed4000801235f\
rp2350_otp_contents.json.rule;C:\Users\anand\src\embedded\picotool\build\CMakeFiles\11b62aa6c3c80e9686a66e87350698ff\ge
nerate_otp_header.rule;C:\Users\anand\src\embedded\picotool\CMakeLists.txt' exited with code 3. [C:\Users\anand\src\emb
edded\picotool\build\generate_otp_header.vcxproj]

This seems related to the newly released rp2350, which I'm not using. Does anyone have any advice on how to resolve this issue?

Thanks!

Dominant language
C++
Stars
999
Forks
189
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from raspberrypi/picotool

All issues in raspberrypi/picotool

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.