• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1libdrm - userspace library for drm
2
3This  is libdrm,  a userspace  library for  accessing the  DRM, direct
4rendering  manager, on  Linux,  BSD and  other  operating systems that
5support the  ioctl interface.  The library  provides wrapper functions
6for the  ioctls to avoid  exposing the kernel interface  directly, and
7for chipsets with drm memory manager, support for tracking relocations
8and  buffers.   libdrm  is  a  low-level library,  typically  used  by
9graphics drivers  such as the Mesa  DRI drivers, the  X drivers, libva
10and  similar projects.  New  functionality in  the kernel  DRM drivers
11typically requires  a new  libdrm, but a  new libdrm will  always work
12with an older kernel.
13
14
15Compiling
16---------
17
18libdrm has two build systems, a legacy autotools build system, and a newer
19meson build system. The meson build system is much faster, and offers a
20slightly different interface, but otherwise provides an equivalent feature set.
21
22To use it:
23
24    meson builddir/
25
26By default this will install into /usr/local, you can change your prefix
27with --prefix=/usr (or `meson configure builddir/ -Dprefix=/usr` after
28the initial meson setup).
29
30Then use ninja to build and install:
31
32    ninja -C builddir/ install
33
34If you are installing into a system location you will need to run install
35separately, and as root.
36
37
38Alternatively you can invoke autotools configure:
39
40	./configure
41
42By default, libdrm  will install into the /usr/local/  prefix.  If you
43want  to  install   this  DRM  to  replace  your   system  copy,  pass
44--prefix=/usr and  --exec-prefix=/ to configure.  If  you are building
45libdrm  from a  git checkout,  you first  need to  run  the autogen.sh
46script.  You can  pass any options to autogen.sh  that you would other
47wise  pass to configure,  or you  can just  re-run configure  with the
48options you need once autogen.sh finishes.
49
50Next step is to build libdrm:
51
52	make
53
54and once make finishes successfully, install the package using
55
56	make install
57
58If you are installing into a system location, you will need to be root
59to perform the install step.
60