source: general/genlib/libusb.xml@ 8c15e4c

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 8c15e4c was 8c15e4c, checked in by Guy Dalziel <gdalziel@…>, 15 years ago

Updated to libusb-1.0.2.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@7881 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 7.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY libusb-download-http "&sourceforge-repo;/libusb/libusb-&libusb-version;.tar.bz2">
8 <!ENTITY libusb-download-ftp "&sources-anduin-ftp;/l/libusb-&libusb-version;.tar.bz2">
9 <!ENTITY libusb-md5sum "dc8865eaff167aabe78e5799762b8067">
10 <!ENTITY libusb-size "305 KB">
11 <!ENTITY libusb-buildsize "4 MB">
12 <!ENTITY libusb-time "less than 0.1 SBU">
13]>
14
15<sect1 id="libusb" xreflabel="libusb-&libusb-version;">
16 <?dbhtml filename="libusb.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>libusb-&libusb-version;</title>
24
25 <indexterm zone="libusb">
26 <primary sortas="a-Libusb">Libusb</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to libusb</title>
31
32 <para>The <application>libusb</application> package contains a library
33 used by some applications for USB device access.</para>
34
35 &lfs65_checked;
36
37 <bridgehead renderas="sect3">Package Information</bridgehead>
38 <itemizedlist spacing="compact">
39 <listitem>
40 <para>Download (HTTP): <ulink url="&libusb-download-http;"/></para>
41 </listitem>
42 <listitem>
43 <para>Download (FTP): <ulink url="&libusb-download-ftp;"/></para>
44 </listitem>
45 <listitem>
46 <para>Download MD5 sum: &libusb-md5sum;</para>
47 </listitem>
48 <listitem>
49 <para>Download size: &libusb-size;</para>
50 </listitem>
51 <listitem>
52 <para>Estimated disk space required: &libusb-buildsize;</para>
53 </listitem>
54 <listitem>
55 <para>Estimated build time: &libusb-time;</para>
56 </listitem>
57 </itemizedlist>
58
59 <bridgehead renderas="sect3">libusb Dependencies</bridgehead>
60
61 <bridgehead renderas="sect4">Optional
62 (Required to Build the API Documentation)</bridgehead>
63 <para role="optional"><xref linkend="doxygen"/></para>
64
65 <para condition="html" role="usernotes">User Notes:
66 <ulink url="&blfs-wiki;/libusb"/></para>
67
68 </sect2>
69
70 <sect2 role="installation">
71 <title>Installation of libusb</title>
72
73 <para>Install <application>libusb</application> by running the following
74 commands:</para>
75
76<screen><userinput>./configure --prefix=/usr &amp;&amp;
77make</userinput></screen>
78
79 <para>If <application>Doxygen</application> is installed and you wish to
80 build the API documentation, issue the following command:</para>
81
82<!-- <screen><userinput>pushd doc &amp;&amp;
83make docs &amp;&amp;
84popd</userinput></screen> -->
85
86<screen><userinput>make -C doc docs</userinput></screen> <!-- tested with doxygen -->
87
88 <para>This package does not come with a test suite.</para>
89
90 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
91
92<screen role="root"><userinput>make install</userinput></screen>
93
94 <para>If you built the API documentation, install it using the following
95 commands as the <systemitem class="username">root</systemitem> user:</para>
96
97<screen role="root"><userinput>install -v -d -m755 /usr/share/doc/libusb-&libusb-version;/apidocs &amp;&amp;
98install -v -m644 doc/html/* \
99 /usr/share/doc/libusb-&libusb-version;/apidocs</userinput></screen>
100
101 </sect2>
102
103 <sect2 role="configuration">
104 <title>Configuring Libusb</title>
105
106<!--
107 <para><application>libusb</application> requires the
108 <systemitem class="filesystem">usbfs</systemitem> kernel filesystem
109 to be mounted on <filename class="directory">/proc/bus/usb</filename>.
110 Applications require the files in this directory to be accessible to the user,
111 sometimes for both reading and writing. To restrict access to USB devices,
112 ensure the <systemitem class="filesystem">usb</systemitem> group exits
113 on your system. If necessary, create the <systemitem
114 class="filesystem">usb</systemitem> group using the following command:</para>
115
116<screen role='root'><userinput>groupadd -g 14 usb</userinput></screen>
117-->
118
119 <para id="libusb-kernel">To access raw USB devices (those not treated as a
120 disk by the mass-storage driver), appropriate support must be available in
121 the kernel. Check your kernel configuration for Device Drivers &rArr; USB
122 support &rArr; Support for Host-side USB. Select any USB hardware device
123 drivers you may need on the same page.</para>
124
125 <indexterm zone="libusb libusb-kernel">
126 <primary sortas="d-USB-device-filesystem">Support for Host-side USB</primary>
127 </indexterm>
128
129 <para>To have raw USB devices set up properly, add the following
130 <application>udev</application> rule.</para>
131
132<screen><literal>cat &gt; /etc/udev/rules.d/23-usb.rules &lt;&lt; "EOF"
133# Set group ownership for raw USB devices
134SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", GROUP="usb"
135EOF</literal></screen>
136
137<!--
138 <para>Fine-tuning of permissions is also possible by creating extra rules,
139 matching on something like this (on one line). The vendor and product can
140 be found by searching the <filename
141 class='directory'>/sys/devices</filename> directory entries or using
142 <command>udevinfo</command> after the device has been attached. See the
143 documentation in the current udev directory of <filename
144 class='directory'>/usr/share/doc></filename> for details.</para>
145
146<screen><literal>SUBSYSTEM=="usb_device", SYSFS{idVendor}=="05d8",
147SYSFS{idProduct}=="4002", GROUP:="scanner"</literal></screen>
148
149 <para>Some older applications, such as <application>VMware</application>,
150 need the following deprecated entry in the <filename>/etc/fstab</filename>
151 file. This is not normally needed.</para>
152
153<screen><literal>usbfs /proc/bus/usb usbfs devgid=14,devmode=0660 0 0</literal></screen>
154-->
155
156 <para>Add any users that need to access raw USB devices to the
157 <systemitem class="groupname">usb</systemitem> group.</para>
158
159<screen role="root"><userinput>usermod -a -G usb <replaceable>&lt;username&gt;</replaceable></userinput></screen>
160
161 </sect2>
162
163 <sect2 role="content">
164 <title>Contents</title>
165
166 <segmentedlist>
167 <segtitle>Installed Programs</segtitle>
168 <segtitle>Installed Library</segtitle>
169 <segtitle>Installed Directories</segtitle>
170
171 <seglistitem>
172 <seg>None</seg>
173 <seg>libusb-1.0.{so,a}</seg>
174 <seg>/usr/include/libusb-1.0 and
175 /usr/share/doc/libusb-&libusb-version;</seg>
176 </seglistitem>
177 </segmentedlist>
178
179 <variablelist>
180 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
181 <?dbfo list-presentation="list"?>
182 <?dbhtml list-presentation="table"?>
183
184 <varlistentry id="libusb-lib">
185 <term><filename class='libraryfile'>libusb-1.0.{so,a}</filename></term>
186 <listitem>
187 <para> libraries contain C functions for accessing
188 USB hardware.</para>
189 <indexterm zone="libusb libusb-lib">
190 <primary sortas="c-libusb">libusb-1.0.{so,a}</primary>
191 </indexterm>
192 </listitem>
193 </varlistentry>
194
195 </variablelist>
196
197 </sect2>
198
199</sect1>
Note: See TracBrowser for help on using the repository browser.