Trouble-lling
Trouble-lling

Reputation: 333

Make kernel headers available to user space

I have written a custom device driver as an out of tree kernel module. This device driver defines a set of ioctls that are needed by user space applications. The ioctls are defined in a custom header file.

What is the standard location where this header file should be installed? Should this be /usr/include? Or perhaps the same location where the standard kernel include files are installed?

I have read this question but it does not specify where the custom header files should be installed.

Upvotes: 4

Views: 1103

Answers (1)

John Zwinck
John Zwinck

Reputation: 249153

I think you should treat your public user-space API headers like any others, and put them under /usr/include. Either as a single file if it's a small API, or in a subdirectory. Just make sure to provide only the necessary pieces in that header, and not the implementation details. If you're going to produce a Linux package for developers, you'd usually name it like foo-dev (APT/Ubuntu) or foo-devel (YUM/RHEL).

Upvotes: 5

Related Questions