Dari mana file header bits/X (mis. bits/errno.h) berasal?

Saya perhatikan di bawah direktori /usr/include saya, ada folder bernama bits dengan banyak file header. Beberapa filenya adalah bits/errno.h atau bits/in.h.

Dari mana file-file ini berasal? Mereka tampaknya bukan bagian dari libc. Misalnya, musl tidak disertakan bersama mereka: https://github.com/cloudius-systems/musl/tree/master/include, namun, saya perhatikan bahwa musl bergantung pada mereka.


person Roymunson    schedule 14.09.2020    source sumber
comment
Bukan duplikat, tapi ini mungkin membantu.   -  person bnaecker    schedule 15.09.2020
comment
Mereka disediakan oleh kompiler dan/atau perpustakaan. Mereka dirancang untuk memberikan sedikit informasi yang mungkin diperlukan oleh satu atau lebih header lainnya. Mereka mungkin berbeda antara berbagai jenis sistem. Mereka membatasi perubahan spesifik platform untuk header utama. Mereka tidak boleh digunakan secara langsung oleh suatu program — program harus menyertakan "header.h" atau "sys/header.h" (atau menggunakan notasi kurung sudut <sys/header.h>). Praprosesor memilih file bits/*.h yang benar.   -  person Jonathan Leffler    schedule 15.09.2020


Jawaban (1)


Kemungkinan besar mereka adalah bagian dari libc(x)-dev (nomenklatur akan bergantung pada distro pilihan Anda)...

Untuk keluarga debian/ubuntu Anda bisa mencobanya

dpk -S /path/to/bits/errno.h

Untuk keluarga RHEL/Centos bisa mencoba

rpm -qf /path/to/bits/errno.h
person tink    schedule 15.09.2020