Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

253
Views
Why /usr/include/linux/stddef.h is empty?

This header file shall define NULL or size_t and other macros, but I find that /usr/include/linux/stddef.h is empty? Why?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

The actual location of the headers is implementation defined. What you look at is not the typical <stddef.h> included by gcc. You can find out exactly where it's located on your system with:

gcc -E - <<<'#include<stddef.h>' | grep stddef.h

which is equivalent to including the header <stddef.h> in an empty C file and running gcc -E on it.

The headers in /usr/include/linux are used to compile the C library (usually glibc on Linux). The GNU manual says:

The linux, asm and asm-generic directories are required to compile programs using the GNU C Library; the other directories describe interfaces to the kernel but are not required if not compiling programs using those interfaces. You do not need to copy kernel headers if you did not specify an alternate kernel header source using ‘--with-headers’.

whereas the C library headers are usually placed by somewhere in /usr/lib/. On my ubuntu 15.04, the header /usr/include/linux/stddef.h is empty. But on my CentOS, it has:

#ifndef _LINUX_STDDEF_H
#define _LINUX_STDDEF_H

#undef NULL
#if defined(__cplusplus)
#define NULL 0
#else
#define NULL ((void *)0)
#endif

#endif

The bottom line is, this is NOT the stddef.h you are interested in and in general, you should not make any assumptions about the location of the standard header files.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!