source: general/prog/lua.xml@ 9b29b78

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 9b29b78 was 9b29b78, checked in by Igor Živković <igor@…>, 11 years ago

Graphviz doesn't compile with Lua 5.2

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

  • Property mode set to 100644
File size: 7.4 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 lua-download-http "http://www.lua.org/ftp/lua-&lua-version;.tar.gz">
8 <!ENTITY lua-download-ftp " ">
9 <!ENTITY lua-md5sum "efbb645e897eae37cad4344ce8b0a614">
10 <!ENTITY lua-size "246 KB">
11 <!ENTITY lua-buildsize "3.5 MB">
12 <!ENTITY lua-time "0.1 SBU">
13]>
14
15<sect1 id="lua" xreflabel="Lua-&lua-version;">
16 <?dbhtml filename="lua.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Lua-&lua-version;</title>
24
25 <indexterm zone="lua">
26 <primary sortas="a-Lua">Lua</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Lua</title>
31
32 <para>
33 <application>Lua</application> is a powerful light-weight programming
34 language designed for extending applications. It is also frequently used
35 as a general-purpose, stand-alone language. <application>Lua</application>
36 combines simple procedural syntax with powerful data description
37 constructs based on associative arrays and extensible semantics. It is
38 dynamically typed, interpreted from bytecodes, and has automatic memory
39 management with garbage collection, making it ideal for configuration,
40 scripting, and rapid prototyping. A fundamental concept in the design of
41 <application>Lua</application> is to provide meta-mechanisms for
42 implementing features, instead of providing a host of features directly in
43 the language. For example, although <application>Lua</application> is not
44 a pure object-oriented language, it does provide meta-mechanisms for
45 implementing classes and inheritance. <application>Lua</application>'s
46 meta-mechanisms bring an economy of concepts and keep the language small,
47 while allowing the semantics to be extended in unconventional ways.
48 Extensible semantics is a distinguishing feature of
49 <application>Lua</application>. <application>Lua</application> is a
50 language engine that you can embed into your application. This means that,
51 besides syntax and semantics, it has an API that allows the application to
52 exchange data with <application>Lua</application> programs and also to
53 extend <application>Lua</application> with C functions. In this sense, it
54 can be regarded as a language framework for building domain-specific
55 languages. <application>Lua</application> is implemented as a small
56 library of C functions, written in ANSI C, and compiles unmodified in all
57 known platforms. The implementation goals are simplicity, efficiency,
58 portability, and low embedding cost. The result is a fast language engine
59 with small footprint, making it ideal in embedded systems too.
60 </para>
61
62 &lfs73_checked;
63
64 <bridgehead renderas="sect3">Package Information</bridgehead>
65 <itemizedlist spacing="compact">
66 <listitem>
67 <para>
68 Download (HTTP): <ulink url="&lua-download-http;"/>
69 </para>
70 </listitem>
71 <listitem>
72 <para>
73 Download (FTP): <ulink url="&lua-download-ftp;"/>
74 </para>
75 </listitem>
76 <listitem>
77 <para>
78 Download MD5 sum: &lua-md5sum;
79 </para>
80 </listitem>
81 <listitem>
82 <para>
83 Download size: &lua-size;
84 </para>
85 </listitem>
86 <listitem>
87 <para>
88 Estimated disk space required: &lua-buildsize;
89 </para>
90 </listitem>
91 <listitem>
92 <para>
93 Estimated build time: &lua-time;
94 </para>
95 </listitem>
96 </itemizedlist>
97
98 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
99 <itemizedlist spacing="compact">
100 <listitem>
101 <para>
102 Required patch:
103 <ulink url="&patch-root;/lua-&lua-version;-shared_library-1.patch"/>
104 </para>
105 </listitem>
106 </itemizedlist>
107
108 <para condition="html" role="usernotes">User Notes:
109 <ulink url="&blfs-wiki;/lua"/>
110 </para>
111 </sect2>
112
113 <sect2 role="installation">
114 <title>Installation of Lua</title>
115
116 <para>
117 Install <application>Lua</application> by running the following
118 commands:
119 </para>
120
121<screen><userinput>patch -Np1 -i ../lua-&lua-version;-shared_library-1.patch &amp;&amp;
122make linux</userinput></screen>
123
124 <para>
125 To test the results, issue: <command>make test</command>.
126 </para>
127
128 <para>
129 Now, as the <systemitem class="username">root</systemitem> user:
130 </para>
131
132<screen role="root"><userinput>make INSTALL_TOP=/usr TO_LIB="liblua.so liblua.so.5.2 liblua.so.5.2.1" \
133 INSTALL_DATA="cp -d" INSTALL_MAN=/usr/share/man/man1 install &amp;&amp;
134mkdir -pv /usr/share/doc/lua-&lua-version; &amp;&amp;
135cp -v doc/*.{html,css,gif,png} /usr/share/doc/lua-&lua-version;</userinput></screen>
136
137 <para>Some packages check for the <application>pkg-config</application> file
138 for <application>Lua</application>. As the
139 <systemitem class="username">root</systemitem> user:</para>
140
141<screen role="root"><userinput>cat &gt; /usr/lib/pkgconfig/lua.pc &lt;&lt; "EOF"
142<literal>V=5.2
143R=&lua-version;
144
145prefix=/usr
146INSTALL_BIN=${prefix}/bin
147INSTALL_INC=${prefix}/include
148INSTALL_LIB=${prefix}/lib
149INSTALL_MAN=${prefix}/man/man1
150INSTALL_LMOD=${prefix}/share/lua/${V}
151INSTALL_CMOD=${prefix}/lib/lua/${V}
152exec_prefix=${prefix}
153libdir=${exec_prefix}/lib
154includedir=${prefix}/include
155
156Name: Lua
157Description: An Extensible Extension Language
158Version: ${R}
159Requires:
160Libs: -L${libdir} -llua -lm
161Cflags: -I${includedir}</literal>
162EOF</userinput></screen>
163
164 </sect2>
165
166 <sect2 role="content">
167 <title>Contents</title>
168
169 <segmentedlist>
170 <segtitle>Installed Programs</segtitle>
171 <segtitle>Installed Library</segtitle>
172 <segtitle>Installed Directories</segtitle>
173
174 <seglistitem>
175 <seg>
176 lua and luac
177 </seg>
178 <seg>
179 liblua.so
180 </seg>
181 <seg>
182 /usr/lib/lua,
183 /usr/share/lua and
184 /usr/share/doc/lua-&lua-version;
185 </seg>
186 </seglistitem>
187 </segmentedlist>
188
189 <variablelist>
190 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
191 <?dbfo list-presentation="list"?>
192 <?dbhtml list-presentation="table"?>
193
194 <varlistentry id="lua-prog">
195 <term><command>lua</command></term>
196 <listitem>
197 <para>
198 is the standalone Lua interpreter.
199 </para>
200 <indexterm zone="lua lua-prog">
201 <primary sortas="b-lua">lua</primary>
202 </indexterm>
203 </listitem>
204 </varlistentry>
205
206 <varlistentry id="luac">
207 <term><command>luac</command></term>
208 <listitem>
209 <para>
210 is the Lua compiler.
211 </para>
212 <indexterm zone="lua luac">
213 <primary sortas="b-luac">luac</primary>
214 </indexterm>
215 </listitem>
216 </varlistentry>
217
218 <varlistentry id="liblua">
219 <term><filename class="libraryfile">liblua.so</filename></term>
220 <listitem>
221 <para>
222 contains the <application>Lua</application> API functions.
223 </para>
224 <indexterm zone="lua liblua">
225 <primary sortas="b-liblua">liblua.so</primary>
226 </indexterm>
227 </listitem>
228 </varlistentry>
229
230 </variablelist>
231
232 </sect2>
233
234</sect1>
Note: See TracBrowser for help on using the repository browser.