RTEMS: types and constants that differ from the RTEMS headers
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
Research direction
Start with the RTEMS 6 headers and the linked downstream CI log, then inspect the RTEMS-specific definitions and ctest configuration linked from the issue. Compare the listed types, constants, functions and missing declarations against those headers, including the related dirfd and st_atime build failures. Done means the reported ABI mismatches and missing APIs are addressed and the RTEMS checks pass.
Written by the indexing model from the issue text.
Description
A ctest run against the RTEMS 6 headers on armv7-rtems-eabihf (the downstream CI from #5209, log) finds the differences below. The definitions involved are the same in RTEMS 7 (newlib 7d4336cf), except for the last item, which I only checked on RTEMS 6.
-
direnthas nod_off,d_reclenord_namlen, sod_nameis at 9 instead of 22, and std'sread_dirhandsreaddir_r272 bytes for a 280-byte struct - Size or alignment of
pthread_attr_t,pthread_cond_t,pthread_condattr_t,pthread_mutex_t,pthread_rwlockattr_t,sem_tandcpu_set_t -
sigactionstarts withsa_flagson RTEMS -
termioshas noc_line, but hasc_ispeedandc_ospeed -
uid_tandgid_tareunsigned shortas on espidf, horizon and vita, which also shiftsstat,passwdandgroup -
FNM_NOESCAPEis 1 andFNM_PATHNAMEis 2 -
CLOCK_BOOTTIMEis 7, not 4 (CLOCK_MONOTONIC) -
rusageonly hasru_utimeandru_stime,utsnamehas 48-byte fields and nodomainname, andstathas nost_spare4 -
__errnodoes not exist, errno is thread-local -
aligned_allocresolves to newlib's, which needs the missing_memalign_r, because libc's-lccomes before-qrtems - 36 functions, 22 constants,
loff_t,Dl_infoandrlimitthat RTEMS does not declare or implement (theFIXME(rtems)skips in the ctest config)
libc also lacks msghdr, cmsghdr and 129 of the names in unix.txt for RTEMS, e.g. the termios constants, F_OK and mprotect.
Not listed above because they break the std build rather than show up in ctest: #5655 (dirfd) and rust-lang/rust#164719 (st_atime), which is why the CI uses nightly-2026-10-19.
- Dominant language
- Rust
- Stars
- 2.6k
- Forks
- 1.3k
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 27
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from rust-lang/libc
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
Maintainers usually reply within 1 day
-
riscv32gc-unknown-linux-gnu: `timex` uses the 32-bit `c_long` layout (144 bytes), glibc's riscv32 `struct timex` is 208 bytesPossibly taken @compiler-segfault claimed this 3 days ago. OpenC-bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
rust-lang/libc#5697 · 3 comments ·
Maintainers usually reply within 1 day
-
Expose `open_how` on AndroidPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
rust-lang/libc#5673 · 1 comment ·
Maintainers usually reply within 1 day
-
RTEMS: `dirfd` is not declaredPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
rust-lang/libc#5655 · 1 comment ·
Maintainers usually reply within 1 day
-
C-bug O-macos
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
rust-lang/libc#5650 · 16 comments ·
Maintainers usually reply within 1 day
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
area:frontend kind:bug priority:p3 ready
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
bug priority: medium ui
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
storytold/vectorcraft#6333 · 1 comment ·
Maintainers usually reply within 1 day
-
bug lexer
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
yara-x fails to build with rsa 0.10.0: unresolved import rsa::Pkcs1v15SignPossibly taken @CfirTsabari claimed this today. Open
Difficulty 1/5 Under an hour Newbie friendliness 87/100
VirusTotal/yara-x#865 ·
Maintainers usually reply within 1 day