source: multimedia/libdriv/sdl2.xml@ 33e63255

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 9.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 33e63255 was 33e63255, checked in by Douglas R. Reno <renodr@…>, 4 years ago

Fix SDL2 compilation on i686

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

  • Property mode set to 100644
File size: 7.7 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 sdl2-download-http "http://www.libsdl.org/release/SDL2-&sdl2-version;.tar.gz">
8 <!ENTITY sdl2-download-ftp " ">
9 <!ENTITY sdl2-md5sum "5a2114f2a6f348bdab5bf52b994811db">
10 <!ENTITY sdl2-size "5.3 MB">
11 <!ENTITY sdl2-buildsize "169 MB (with docs)">
12 <!ENTITY sdl2-time "0.4 SBU (using parallelism=4; with docs)">
13]>
14
15<sect1 id="sdl2" xreflabel="SDL2-&sdl2-version;">
16 <?dbhtml filename="sdl2.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>SDL2-&sdl2-version;</title>
24
25 <indexterm zone="sdl2">
26 <primary sortas="a-SDL2">SDL2</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to SDL2</title>
31
32 <para>The Simple DirectMedia Layer Version 2
33 (<application>SDL2</application> for short) is a cross-platform library
34 designed to make it easy to write multimedia software, such as games and
35 emulators.</para>
36
37 &lfs90_checked;
38
39 <bridgehead renderas="sect3">Package Information</bridgehead>
40 <itemizedlist spacing="compact">
41 <listitem>
42 <para>Download (HTTP): <ulink url="&sdl2-download-http;"/></para>
43 </listitem>
44 <listitem>
45 <para>Download (FTP): <ulink url="&sdl2-download-ftp;"/></para>
46 </listitem>
47 <listitem>
48 <para>Download MD5 sum: &sdl2-md5sum;</para>
49 </listitem>
50 <listitem>
51 <para>Download size: &sdl2-size;</para>
52 </listitem>
53 <listitem>
54 <para>Estimated disk space required: &sdl2-buildsize;</para>
55 </listitem>
56 <listitem>
57 <para>Estimated build time: &sdl2-time;</para>
58 </listitem>
59 </itemizedlist>
60
61 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
62 <itemizedlist spacing="compact">
63 <listitem>
64 <para>
65 Required patch (for i686 systems):
66 <ulink url="&patch-root;/SDL2-&sdl2-version;-opengl_include_fix-1.patch"/>
67 </para>
68 </listitem>
69 </itemizedlist>
70
71 <bridgehead renderas="sect3">SDL2 Dependencies</bridgehead>
72
73 <bridgehead renderas="sect4">Optional</bridgehead>
74 <para role="optional">
75 <xref linkend="alsa"/>,
76 <xref linkend="doxygen"/> (to create documentation),
77 <xref linkend="ibus"/>,
78 <xref linkend="nasm"/>,
79 <xref linkend="pulseaudio"/>,
80 <xref linkend="x-window-system"/>,
81 <ulink url="http://pkgs.fedoraproject.org/repo/pkgs/directfb/">DirectFB</ulink>, and
82 <ulink url="https://fcitx-im.org/">fcitx</ulink>
83 </para>
84
85 <para condition="html" role="usernotes">User Notes:
86 <ulink url="&blfs-wiki;/sdl"/></para>
87
88 </sect2>
89
90 <sect2 role="installation">
91 <title>Installation of SDL2</title>
92
93 <para>First, if you are building on a 32-bit i686 system, apply a patch
94 containing a fix for the OpenGL headers and their data types:</para>
95
96<screen><userinput remap="pre">case $(uname -m) in
97 i?86) patch -Np1 -i ../SDL2-&sdl2-version;-opengl_include_fix-1.patch ;;
98esac</userinput></screen>
99
100 <para>Install <application>SDL2</application> by running the
101 following commands:</para>
102
103<screen><userinput>./configure --prefix=/usr &amp;&amp;
104make</userinput></screen>
105
106 <para>
107 If you have <xref linkend="doxygen"/> installed and want to build the
108 html documentation, run the following commands:
109 </para>
110
111<screen remap="doc"><userinput>pushd docs &amp;&amp;
112 doxygen &amp;&amp;
113popd</userinput></screen>
114
115 <note>
116 <para>If you wish to build and run the package regression
117 tests, do not delete the static libraries below until after
118 the tests are built.</para>
119 </note>
120
121 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
122
123<screen role="root"><userinput>make install &amp;&amp;
124rm -v /usr/lib/libSDL2*.a</userinput></screen>
125
126 <para>If you built the documentation, install it as the <systemitem
127 class="username">root</systemitem> user:</para>
128
129<screen role="root"
130 remap="doc"><userinput>install -v -m755 -d /usr/share/doc/SDL2-&sdl2-version;/html &amp;&amp;
131cp -Rv docs/output/html/* /usr/share/doc/SDL2-&sdl2-version;/html</userinput></screen>
132
133 </sect2>
134<!--
135 The tests are broken for version 2.0.10. It cannot find libSDL2_test*.
136
137 <sect2 role="testing">
138 <title>Testing SDL2</title>
139
140 <para>If you wish to, test the installation of
141 <application>SDL2</application> using the included
142 test programs.
143 None of the resulting binaries need to be installed.
144 Issue the following commands to build the
145 test programs:</para>
146
147<screen><userinput>cd test &amp;&amp;
148./configure &amp;&amp;
149make</userinput></screen>
150
151 <para>Each of the test programs (they are listed in the
152 <filename>README</filename> file in this directory) will need to be run
153 individually. Many of them will need to be manually killed. Additionally,
154 speakers need to be on with the volume at a suitable level.</para>
155
156 </sect2>
157-->
158 <sect2 role="commands">
159 <title>Command Explanations</title>
160
161 <para><command>rm -v /usr/lib/libSDL2*.a</command>: Normally
162 static libraries can be disabled with a <option>--disable-static</option>
163 option to configure, but that breaks the build in this package.</para>
164
165 <para><option>--disable-alsa-shared</option>: This switch disables
166 dynamically loading ALSA shared libraries.</para>
167
168 <para><option>--disable-sdl-dlopen</option>: This switch disables using
169 dlopen for shared object loading. Loading image backend libraries like
170 libpng dynamically on the fly does not work.</para>
171
172 <para><option>--disable-x11-shared</option>: This switch disables
173 dynamically loading X11 shared libraries.</para>
174
175 </sect2>
176
177 <sect2 role="configuration">
178 <title>Configuring SDL2</title>
179
180 <sect3>
181 <title>Configuration Information</title>
182
183 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
184 href="../../xincludes/lib-config.xml"/>
185
186 </sect3>
187
188 </sect2>
189
190 <sect2 role="content">
191 <title>Contents</title>
192
193 <segmentedlist>
194 <segtitle>Installed Program</segtitle>
195 <segtitle>Installed Libraries</segtitle>
196 <segtitle>Installed Directories</segtitle>
197
198 <seglistitem>
199 <seg>sdl2-config</seg>
200 <seg>libSDL2.so</seg>
201 <seg>/usr/include/SDL2 and
202 /usr/share/doc/SDL-&sdl2-version;</seg>
203 </seglistitem>
204 </segmentedlist>
205
206 <variablelist>
207 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
208 <?dbfo list-presentation="list"?>
209 <?dbhtml list-presentation="table"?>
210
211 <varlistentry id="sdl2-config">
212 <term><command>sdl2-config</command></term>
213 <listitem>
214 <para>determines the compile and linker flags that should be used to
215 compile and link programs that use
216 <filename class='libraryfile'>libSDL2</filename>.</para>
217 <indexterm zone="sdl2 sdl2-config">
218 <primary sortas="b-sdl2-config">sdl2-config</primary>
219 </indexterm>
220 </listitem>
221 </varlistentry>
222
223 <varlistentry id="libsdl2">
224 <term><filename class='libraryfile'>libSDL2.so</filename></term>
225 <listitem>
226 <para> library provides low level access to audio, keyboard, mouse,
227 joystick, 3D hardware via OpenGL, and
228 2D frame buffer across multiple platforms.</para>
229 <indexterm zone="sdl2 libsdl2">
230 <primary sortas="c-libsdl2">libSDL2.so</primary>
231 </indexterm>
232 </listitem>
233 </varlistentry>
234
235 </variablelist>
236
237 </sect2>
238
239</sect1>
Note: See TracBrowser for help on using the repository browser.