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

picolibc: Update to picolibc-1.8.7 #781

Merged
merged 3 commits into from
Sep 22, 2024
Merged

picolibc: Update to picolibc-1.8.7 #781

merged 3 commits into from
Sep 22, 2024

Conversation

keith-packard
Copy link
Collaborator

Integrate new upstream version.
Include strnlen_s fix.
Include aarch64 cmake fix.

@keith-packard
Copy link
Collaborator Author

Looks like there's some issue running 'node' on the linux CI machines?

/__e/node20/bin/node: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by /__e/node20/bin/node)

@keith-packard keith-packard force-pushed the topic-picolibc-1.8.7 branch 2 times, most recently from cb0825c to 089736b Compare September 17, 2024 02:28
@stephanosio
Copy link
Member

Looks like there's some issue running 'node' on the linux CI machines?

/__e/node20/bin/node: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by /__e/node20/bin/node)

Yes, this was just fixed.

Regarding other failures, please try rebasing onto the latest main.

@stephanosio
Copy link
Member

Rebased onto the latest main to pull in the CI fixes.

@stephanosio stephanosio modified the milestones: 0.16.10, 0.16.9 Sep 19, 2024
Integrate new upstream version.
Include strnlen_s fix.
Include aarch64 cmake fix.

Signed-off-by: Keith Packard <keithp@keithp.com>
This eliminates a second longjmp definition which didn't have the
_Noreturn attribute.

Signed-off-by: Keith Packard <keithp@keithp.com>
@keith-packard
Copy link
Collaborator Author

Added a picolibc fix for i386 with non-Linux toolchains (like Zephyr). We'll see if that helps?

@stephanosio
Copy link
Member

/__w/sdk-ng/sdk-ng/zephyrproject/zephyr/lib/libc/picolibc/libc-hooks.c:51:34: error: implicit declaration of function 'FDEV_SETUP_STREAM' [-Werror=implicit-function-declaration]
   51 | static LIBC_DATA FILE __stdout = FDEV_SETUP_STREAM(picolibc_put, NULL, NULL, 0);
      |                                  ^~~~~~~~~~~~~~~~~

@keith-packard FYI

@keith-packard
Copy link
Collaborator Author

keith-packard commented Sep 19, 2024

/__w/sdk-ng/sdk-ng/zephyrproject/zephyr/lib/libc/picolibc/libc-hooks.c:51:34: error: implicit declaration of function 'FDEV_SETUP_STREAM' [-Werror=implicit-function-declaration]
   51 | static LIBC_DATA FILE __stdout = FDEV_SETUP_STREAM(picolibc_put, NULL, NULL, 0);
      |                                  ^~~~~~~~~~~~~~~~~

@keith-packard FYI

What Zephyr version is this trying to build? Can I get any of the built toolchain artifacts to test against?

@stephanosio
Copy link
Member

What Zephyr version is this trying to build?

https://github.com/zephyrproject-rtos/zephyr/tree/collab-sdk-dev

Can I get any of the built toolchain artifacts to test against?

You should be able to download one from https://github.com/zephyrproject-rtos/sdk-ng/actions/runs/10938020345?pr=781.

@keith-packard
Copy link
Collaborator Author

Managed to reproduce the issue. It looks like the include path is busted -- the picolibc stdio.h isn't getting found; instead it loads the sys-include/stdio.h file which is a hacked up version of the newlib stdio.h file. I'll poke a bit more.

@keith-packard
Copy link
Collaborator Author

Yeah, picolibc/picolibc@cf914a3 was supposed to fix some bad path handling and appears to have broken the SDK build. I'm not entirely sure what is wrong, but reverting that "should" fix the issue. I'll give that a shot.

Attempt to fix the bad specs file paths

Signed-off-by: Keith Packard <keithp@keithp.com>
@stephanosio
Copy link
Member

Yeah, picolibc/picolibc@cf914a3 was supposed to fix some bad path handling and appears to have broken the SDK build. I'm not entirely sure what is wrong, but reverting that "should" fix the issue. I'll give that a shot.

That seems to have fixed the issue. Thanks!

@stephanosio stephanosio merged commit 20344ef into main Sep 22, 2024
173 of 180 checks passed
@keith-packard
Copy link
Collaborator Author

The contributor who provided picolibc/picolibc@cf914a3 has provided an updated version which should work for Zephyr in my next picolibc update (which looks like it might be soon; there are a bunch of small fixes which 1.8.7 provoked that would be nice to have in a 'real' picolibc release, synchronized with Zephyr).

@keith-packard keith-packard deleted the topic-picolibc-1.8.7 branch September 23, 2024 15:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants