diff options
-rw-r--r-- | README | 85 |
1 files changed, 27 insertions, 58 deletions
@@ -1,72 +1,41 @@ +libdrm - userspace library for drm -DRM README file - - -There are two main parts to this package: the DRM client library/interface -(libdrm.so) and kernel/hardware-specific device modules (such as radeon.ko). -The kernel device modules are not shipped with libdrm releases and should only -be built from the git tree by developers and bleeding-edge testers of -non-Intel hardware. The Intel kernel modules are developed in the Linux -kernel tree. +This is libdrm, a userspace library for accessing the DRM, direct +rendering manager, on Linux, BSD and other operating systes that +support the ioctl interface. The library provides wrapper functions +for the ioctls to avoid exposing the kernel interface directly, and +for chipsets with drm memory manager, support for tracking relocations +and buffers. libdrm is a low-level library, typically used by +graphics drivers such as the Mesa DRI drivers, the X drivers, libva +and similar projects. New functionality in the kernel DRM drivers +typically requires a new libdrm, but a new libdrm will always work +with an older kernel. Compiling --------- -By default, libdrm and the DRM header files will install into /usr/local/. -If you want to install this DRM to replace your system copy, say: - - ./configure --prefix=/usr --exec-prefix=/ - -Then, - make install +libdrm is a standard autotools packages and follows the normal +configure, build and install steps. The first step is to configure +the package, which is done by running the configure shell script: + ./configure -To build the device-specific kernel modules from the git tree: +By default, libdrm will install into the /usr/local/ prefix. If you +want to install this DRM to replace your system copy, pass +--prefix=/usr and --exec-prefix=/ to configure. If you are building +libdrm from a git checkout, you first need to run the autogen.sh +script. You can pass any options to autogen.sh that you would other +wise pass to configure, or you can just re-run configure with the +options you need once autogen.sh finishes. - cd linux-core/ - make - cp *.ko /lib/modules/VERSION/kernel/drivers/char/drm/ - (where VERSION is your kernel version: uname -f) +Next step is to build libdrm: -Or, - cd bsd-core/ make - copy the kernel modules to the appropriate place - - - -Tips & Trouble-shooting ------------------------ - -1. You'll need kernel sources. If using Fedora Core 5, for example, you may - need to install RPMs such as: - kernel-smp-devel-2.6.15-1.2054_FC5.i686.rpm - kernel-devel-2.6.15-1.2054_FC5.i686.rpm - etc. - - -2. You may need to make a symlink from /lib/modules/VERSION/build to your - kernel sources in /usr/src/kernels/VERSION (where version is `uname -r`): - - cd /lib/modules/VERSION - ln -s /usr/src/kernels/VERSION build - - -3. If you've build the kernel modules but they won't load because of an - error like this: - - $ /sbin/modprobe drm - FATAL: Error inserting drm (/lib/modules/2.6.15-1.2054_FC5smp/kernel/drivers/char/drm/drm.ko): Invalid module format - - And 'dmesg|tail' says: - - drm: disagrees about version of symbol struct_module - - Try recompiling your drm modules without the Module.symvers file. - That is rm the /usr/src/kernels/2.6.15-1.2054_FC5-smp-i686/Module.symvers - file (or rename it). Then do a 'make clean' before rebuilding your drm - modules. +and once make finishes successfully, install the package using + make install +If you are install into a system location, you will need to be root to +perform the install step. |