Skip to content
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

Pre-compiled Picotool doesn't work on Bullseye #106

Open
Markjanner opened this issue Oct 21, 2024 · 3 comments
Open

Pre-compiled Picotool doesn't work on Bullseye #106

Markjanner opened this issue Oct 21, 2024 · 3 comments
Labels
known issue Issues that are known but are on hold.

Comments

@Markjanner
Copy link

Markjanner commented Oct 21, 2024

I'm quite new to VS code, and following the online guide to get Blink compiled on a Pi400. Compile stops, seems to be complaining about the library versions? The VScode extension is set to SDK v2.0.0.

I have checked the libc version installed in the path given in the terminal output and it says v2.3.1, which is the latest according version to synaptic. Do I need newer versions from somewhere or is the compiler looking in the wrong place?

image

Terminal window:

`/blink/build/blink.elf blink.uf2 --family rp2040 --abs-block
/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool)
/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool)
/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool)
WARNING: Disassembly is not correct
/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool)
/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool)
/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool)
ninja: build stopped: subcommand failed.`

If I set the SDK version in the VS code extension to v1.5.x the blink project builds fine, but then it complains when I go to 'Run' it:

`Executing task: /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool load /home/pi400/blink/build/blink.elf -fx

/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libc.so.6: version GLIBC_2.32' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool) /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libc.so.6: version GLIBC_2.34' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool)
/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool: /lib/aarch64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool)

  • The terminal process "/home/pi400/.pico-sdk/picotool/2.0.0/picotool/picotool 'load', '/home/pi400/blink/build/blink.elf', '-fx'" failed to launch (exit code: 1).
  • Terminal will be reused by tasks, press any key to close it. `

Should I be able to build with version 2.0.0 of the SDK on a Pi400??:
uname -a
Linux pi400 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr 3 17:24:16 BST 2023 aarch64 GNU/Linux

@paulober
Copy link
Collaborator

Thanks for reporting the issue.

I seems like picotool is compiled with a newer GLIBC version as currently included in your OS.
Unfortunately you can't just update this library.
What is the output of ldd --version and cat /etc/os-release on your system?

@Markjanner
Copy link
Author

Markjanner commented Oct 22, 2024

Ah, ok. So I could be looking at needing bookworm, instead of bullseye?

ldd --version:
ldd (Debian GLIBC 2.31-13+rpt2+rpi1+deb11u11) 2.31

cat /etc/os-release:
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)" NAME="Debian GNU/Linux" VERSION_ID="11" VERSION="11 (bullseye)" VERSION_CODENAME=bullseye ID=debian HOME_URL="https://www.debian.org/" SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/"

..... following up on the above, I installed the latest Raspberry Pi OS 64bit on an SDcard and installed vscode extension and blink example compiled and ran first time:

ldd (Debian GLIBC 2.36-9+rpt2+deb12u8) 2.36

cat /etc/os-release:
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian

So it looks like a bullseye issue?

@will-v-pi
Copy link
Collaborator

Yes, the pre-compiled picotool is built on Bookworm, so seems like it doesn't work with Bullseye

@will-v-pi will-v-pi changed the title Blink example - compile stops. (correct libc version not found?) Pre-compiled Picotool doesn't work on Bullseye Oct 31, 2024
@will-v-pi will-v-pi added the known issue Issues that are known but are on hold. label Oct 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
known issue Issues that are known but are on hold.
Projects
None yet
Development

No branches or pull requests

3 participants