10000 make submodules fails in ports/rp2: Internal build error: The submodule list should not be empty. · Issue #16870 · micropython/micropython · GitHub
[go: up one dir, main page]

Skip to content

make submodules fails in ports/rp2: Internal build error: The submodule list should not be empty. #16870

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
asdil12 opened this issue Mar 6, 2025 · 3 comments · Fixed by #16907

Comments

@asdil12
Copy link
asdil12 commented Mar 6, 2025

Port, board and/or hardware

rp2

MicroPython version

See info below

Reproduction

# in ports/rp2 dir
make submodules

Expected behaviour

This is what happens on v1.24.1

make -f ../../py/mkrules.mk GIT_SUBMODULES="lib/pico-sdk" submodules
make[1]: Entering directory '/home/dheidler/devel/micropython/ports/rp2'
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
Updating submodules: lib/pico-sdk
Synchronizing submodule url for 'lib/pico-sdk'
make[1]: Leaving directory '/home/dheidler/devel/micropython/ports/rp2'
make[1]: Entering directory '/home/dheidler/devel/micropython/ports/rp2'
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
Updating submodules:
make[1]: Leaving directory '/home/dheidler/devel/micropython/ports/rp2'

Observed behaviour

this happens on current master

Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
make -f ../../py/mkrules.mk GIT_SUBMODULES="lib/pico-sdk" submodules
make[1]: Entering directory '/home/dheidler/devel/micropython/ports/rp2'
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
Updating submodules: lib/pico-sdk
Synchronizing submodule url for 'lib/pico-sdk'
make[1]: Leaving directory '/home/dheidler/devel/micropython/ports/rp2'
make[1]: Entering directory '/home/dheidler/devel/micropython/ports/rp2'
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
Updating submodules:
# If you see this error, it may mean the internal step run by the port's build
# system to find git submodules has failed. Double-check dependencies are set correctly.
Internal build error: The submodule list should not be empty.
exit 1
make[1]: *** [../../py/mkrules.mk:259: submodules] Error 1
make[1]: Leaving directory '/home/dheidler/devel/micropython/ports/rp2'
make: *** [Makefile:77: submodules] Error 2

Additional Information

No, I've provided everything above.

Code of Conduct

Yes, I agree

@andrewleech
Copy link
Contributor

I ran into this error message recently and it took me quite a while to figure out what was going on... In my case it was because cmake wasn't installed!

I'm guessing from your linked issue there probably not the problem in your case.

In my investigation I found that the rp2 port make submodules command now runs in two stages; the first of hard-coded to pull the Pico SDK, the second runs cmake to parse any other dependencies from the board configuration.

Any unexpected failure in the cmake stage (like cmake not being installed) results in this same error message, hiding the underlying error. This can be quite confusing!

I found the real error by just running th 8000 e normal make command instead of make submodules, then the full error was printed.

@cnadler86
Copy link
cnadler86 commented Mar 9, 2025

Just want to point out that this happens also in the esp32 port, if I add some dependencies to a idf_component manifest.

Update: also if I don't change the IDF Manifest File.

@robert-hh
Copy link
Contributor

No problem here with a plain Linux system. Please verify that your build set-up is complete.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants
0