GNU social JP
  • FAQ
  • Login
GNU social JPは日本のGNU socialサーバーです。
Usage/ToS/admin/test/Pleroma FE
  • Public

    • Public
    • Network
    • Groups
    • Featured
    • Popular
    • People

Conversation

Notices

  1. Embed this notice
    keithp (keithp@fosstodon.org)'s status on Wednesday, 28-Jan-2026 23:58:33 JST keithp keithp

    You know how I always say picolibc isn't a Linux C library because it doesn't do all of the fancy Linux stuff? Well, it turns out you don't need much to get a semi-functioning system.

    $ size test-hello-picolibc test-hello-glibc
    text data bss dec hex filename
    3632 144 4656 8432 20f0 test-hello-picolibc
    645697 23704 22576 691977 a8f09 test-hello-glibc

    I blame Kees Cook for nerd-sniping me on this one.

    https://github.com/picolibc/picolibc/tree/native-linux

    In conversation about 9 months ago from fosstodon.org permalink
    • James Morris likes this.
    • Embed this notice
      Rich Felker (dalias@hachyderm.io)'s status on Wednesday, 28-Jan-2026 23:58:32 JST Rich Felker Rich Felker
      in reply to

      @keithp With musl, gcc -Os -static hello.c, on stock Alpine x86_64:

      text data bss dec hex filename
      3893 344 1744 5981 175d a.out

      In conversation about 9 months ago permalink
    • Embed this notice
      keithp (keithp@fosstodon.org)'s status on Thursday, 29-Jan-2026 03:22:54 JST keithp keithp
      in reply to
      • Rich Felker
      • The Penguin of Evil

      @etchedpixels @dalias yeah, gcc converts printf("hello world\n") into puts("hello world");

      That's one of the numerous optimizations present in "hosted" mode, which is why I always tell people to get rid of -ffreestanding when building with a full C library.

      Btw, on armhf, hello world is way smaller than on x86_64:

      $ size test-hello-armhf
      text data bss dec hex filename
      1520 76 4624 6220 184c test-hello-armhf

      In conversation about 9 months ago permalink
      James Morris likes this.
    • Embed this notice
      The Penguin of Evil (etchedpixels@mastodon.social)'s status on Thursday, 29-Jan-2026 03:22:55 JST The Penguin of Evil The Penguin of Evil
      in reply to
      • Rich Felker

      @dalias @keithp

      Fuzix (standard C library, 8085 CPU, not even a fancy optimizing compiler)

      base text data bss size hex filename
      100 10c5 5c 318 5177 1439 a.out

      gcc on 6809 or HC11 is way way smaller but it turns out gcc seems to know to swap the printf call magically for something else in this case.

      In conversation about 9 months ago permalink
      James Morris likes this.
    • Embed this notice
      James Morris (jmorris@social.kernel.org)'s status on Thursday, 29-Jan-2026 03:24:39 JST James Morris James Morris
      in reply to
      @keithp Impressive. Reminds me about those Rust binaries...
      In conversation about 9 months ago permalink
    • Embed this notice
      keithp (keithp@fosstodon.org)'s status on Thursday, 29-Jan-2026 05:36:10 JST keithp keithp
      in reply to
      • Paul E. McKenney

      @paulmckrcu nolibc is awesome and you know it.

      In conversation about 9 months ago permalink
      James Morris likes this.
    • Embed this notice
      Paul E. McKenney (paulmckrcu@social.kernel.org)'s status on Thursday, 29-Jan-2026 05:36:11 JST Paul E. McKenney Paul E. McKenney
      in reply to
      @keithp Then Linux-kernel tools/include/nolibc will provide you with even more irritation!!! ;-)
      In conversation about 9 months ago permalink

Feeds

  • Activity Streams
  • RSS 2.0
  • Atom
  • Help
  • About
  • FAQ
  • TOS
  • Privacy
  • Source
  • Version
  • Contact

GNU social JP is a social network, courtesy of GNU social JP管理人. It runs on GNU social, version 2.0.2-dev, available under the GNU Affero General Public License.

Creative Commons Attribution 3.0 All GNU social JP content and data are available under the Creative Commons Attribution 3.0 license.