source: postlfs/security/gpgme.xml@ 22c07de

11.1 11.2 11.3 12.0 12.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 22c07de was 22c07de, checked in by Douglas R. Reno <renodr@…>, 3 years ago

Fix building GPGME with Python 3.10 installed

  • Property mode set to 100644
File size: 8.5 KB
RevLine 
[b358845]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
[8dfc5c3]7 <!ENTITY gpgme-download-http "&gnupg-http;/gpgme/gpgme-&gpgme-version;.tar.bz2">
[d4e8cd93]8 <!ENTITY gpgme-download-ftp "&gnupg-ftp;/gpgme/gpgme-&gpgme-version;.tar.bz2">
[14d673a2]9 <!ENTITY gpgme-download-ftp " ">
[34c29696]10 <!ENTITY gpgme-md5sum "e31b9e0efc5a2e1ec1bbed22e7a082a4">
[8d97143c]11 <!ENTITY gpgme-size "1.6 MB">
[34c29696]12 <!ENTITY gpgme-buildsize "222 MB">
13 <!ENTITY gpgme-time "0.8 SBU (with parallelism=4; with all bindings, add 0.7 SBU for tests)">
[b358845]14]>
15
16<sect1 id="gpgme" xreflabel="GPGME-&gpgme-version;">
17 <?dbhtml filename="gpgme.html"?>
18
19 <sect1info>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>GPGME-&gpgme-version;</title>
24
25 <indexterm zone="gpgme">
26 <primary sortas="a-GPGME">GPGME</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to GPGME</title>
31
[d6da5da]32 <para>
[200bab29]33 The <application>GPGME</application> package is a C library
[bbacc9a]34 that allows cryptography support to be added to a
[d6da5da]35 program. It is designed to make access to public key crypto
36 engines like <application>GnuPG</application> or GpgSM easier
37 for applications. <application>GPGME</application> provides
38 a high-level crypto API for encryption, decryption, signing,
39 signature verification and key management.
40 </para>
[b358845]41
[20a35ab]42 &lfs110a_checked;
[b358845]43
44 <bridgehead renderas="sect3">Package Information</bridgehead>
45 <itemizedlist spacing="compact">
46 <listitem>
[d6da5da]47 <para>
48 Download (HTTP): <ulink url="&gpgme-download-http;"/>
49 </para>
[b358845]50 </listitem>
51 <listitem>
[d6da5da]52 <para>
53 Download (FTP): <ulink url="&gpgme-download-ftp;"/>
54 </para>
[b358845]55 </listitem>
56 <listitem>
[d6da5da]57 <para>
58 Download MD5 sum: &gpgme-md5sum;
59 </para>
[b358845]60 </listitem>
61 <listitem>
[d6da5da]62 <para>
63 Download size: &gpgme-size;
64 </para>
[b358845]65 </listitem>
66 <listitem>
[d6da5da]67 <para>
68 Estimated disk space required: &gpgme-buildsize;
69 </para>
[b358845]70 </listitem>
71 <listitem>
[d6da5da]72 <para>
73 Estimated build time: &gpgme-time;
74 </para>
[b358845]75 </listitem>
76 </itemizedlist>
[150992ab]77
[b358845]78 <bridgehead renderas="sect3">GPGME Dependencies</bridgehead>
79
80 <bridgehead renderas="sect4">Required</bridgehead>
[d6da5da]81 <para role="required">
82 <xref linkend="libassuan"/>
83 </para>
[b358845]84
85 <bridgehead renderas="sect4">Optional</bridgehead>
[289d262f]86 <para role="optional">
[33690a1]87 <xref linkend="doxygen"/> and
[cd074c2]88 <xref linkend="graphviz"/> (for API documentation),
[33690a1]89 <xref linkend="gnupg2"/> (required if Qt or SWIG are installed;
[356a7a9]90 used during the testsuite),
[33690a1]91 <xref linkend="clisp"/>,<!--
92gpgme can still use python 2.7, but can use python3 as well,
93so do not advertise python2
94 <xref linkend="python2"/>,-->
[30d6b736]95 <xref linkend="qt5"/>, and/or
96 <xref linkend="swig"/> (for language bindings)
[d6da5da]97 </para>
[b358845]98
99 <para condition="html" role="usernotes">User Notes:
[d6da5da]100 <ulink url="&blfs-wiki;/gpgme"/>
101 </para>
[b358845]102 </sect2>
103
104 <sect2 role="installation">
105 <title>Installation of GPGME</title>
106
[32089e1]107 <para>
[22c07de]108 First, fix an issue building the package with Glibc-2.34 or later:
[32089e1]109 </para>
110
[22c07de]111<screen><userinput remap="pre">sed 's/defined(__sun.*$/1/' -i src/posix-io.c</userinput></screen>
112
113 <para>
114 Next, fix an issue building with Python 3.10 installed:
115 </para>
116
117<screen><userinput remap="pre">sed -e 's/3\.9/3\.10/' \
118 -e '23664,+3 s/^/#/' \
119 -i configure</userinput></screen>
[32089e1]120
[d6da5da]121 <para>
122 Install <application>GPGME</application> by running the following
123 commands:
124 </para>
[b358845]125
[14f0ab29]126<screen><userinput>./configure --prefix=/usr --disable-gpg-test &amp;&amp;
[b358845]127make</userinput></screen>
[150992ab]128
[d6da5da]129 <para>
[14f0ab29]130 To test the results, you should have <xref linkend="gnupg2"/> installed
131 and remove the <command>--disable-gpg-test</command> above. Issue:
[0b5fa18]132 <command>make -k check</command>.
[d6da5da]133 </para>
[b358845]134
[d6da5da]135 <para>
136 Now, as the <systemitem class="username">root</systemitem> user:
137 </para>
[b358845]138
139<screen role="root"><userinput>make install</userinput></screen>
140
141 </sect2>
[f7ac7b2]142
[14f0ab29]143 <sect2 role="commands">
144 <title>Command Explanations</title>
145
146 <para>
147 <parameter>--disable-gpg-test</parameter>: if this parameter is not
148 passed to configure, the test programs are built during
149 <command>make</command> stage, which requires <xref linkend="gnupg2"/>.
150 This parameter is not needed if <xref linkend="gnupg2"/> is installed.
151 </para>
152
153 </sect2>
154
[b358845]155 <sect2 role="content">
156 <title>Contents</title>
157
158 <segmentedlist>
159 <segtitle>Installed Program</segtitle>
160 <segtitle>Installed Libraries</segtitle>
161 <segtitle>Installed Directory</segtitle>
162
163 <seglistitem>
[d6da5da]164 <seg>
[cd074c2]165 gpgme-config, gpgme-json, and gpgme-tool
[d6da5da]166 </seg>
167 <seg>
[cd074c2]168 libgpgme, libgpgmepp.so, and libqgpgme.so
[d6da5da]169 </seg>
170 <seg>
[cd074c2]171 /usr/include/{gpgme++,qgpgme,QGpgME},
172 /usr/lib/cmake/{Gpgmepp,QGpgme}.
[90691c2]173 /usr/lib/python{2.7,3.9}/site-packages/gpg, and
[d6da5da]174 /usr/share/common-lisp/source/gpgme
175 </seg>
[b358845]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
[385b822]184 <varlistentry id="gpgme-config">
185 <term><command>gpgme-config</command></term>
186 <listitem>
187 <para>
188 is used to obtain <application>GPGME</application> compilation and
[4c24eb0a]189 linking information
[385b822]190 </para>
191 <indexterm zone="gpgme gpgme-config">
192 <primary sortas="b-gpgme-config">gpgme-config</primary>
193 </indexterm>
194 </listitem>
195 </varlistentry>
196
[cd074c2]197 <varlistentry id="gpgme-json">
198 <term><command>gpgme-json</command></term>
199 <listitem>
200 <para>
[4c24eb0a]201 outputs <application>GPGME</application> commands in JSON format
[cd074c2]202 </para>
203 <indexterm zone="gpgme gpgme-json">
204 <primary sortas="b-gpgme-json">gpgme-json</primary>
205 </indexterm>
206 </listitem>
207 </varlistentry>
208
[150992ab]209 <varlistentry id="gpgme-tool">
210 <term><command>gpgme-tool</command></term>
211 <listitem>
212 <para>
[d5f6e8e]213 is an assuan server exposing <application>GPGME</application>
214 operations, such as printing fingerprints and keyids with
[4c24eb0a]215 keyservers
[150992ab]216 </para>
217 <indexterm zone="gpgme gpgme-tool">
218 <primary sortas="b-gpgme-tool">gpgme-tool</primary>
219 </indexterm>
220 </listitem>
221 </varlistentry>
222
[cd074c2]223 <!-- As of 1.13.1, this library isn't present anymore.
[b358845]224 <varlistentry id="libgpgme-pthread">
[d6da5da]225 <term><filename class="libraryfile">libgpgme-pthread.so</filename></term>
[b358845]226 <listitem>
[d6da5da]227 <para>
228 contains the <application>GPGME</application> API functions for
229 applications using pthread.
230 </para>
[b358845]231 <indexterm zone="gpgme libgpgme-pthread">
[d6da5da]232 <primary sortas="c-libgpgme-pthread">libgpgme-pthread.so</primary>
[b358845]233 </indexterm>
234 </listitem>
235 </varlistentry>
[cd074c2]236 -->
[b358845]237
238 <varlistentry id="libgpgme">
[d6da5da]239 <term><filename class="libraryfile">libgpgme.so</filename></term>
[b358845]240 <listitem>
[d6da5da]241 <para>
[4c24eb0a]242 contains the <application>GPGME</application> API functions
[d6da5da]243 </para>
[b358845]244 <indexterm zone="gpgme libgpgme">
[d6da5da]245 <primary sortas="c-libgpgme">libgpgme.so</primary>
[b358845]246 </indexterm>
247 </listitem>
248 </varlistentry>
249
[48ad7d9]250 <varlistentry id="libgpgmepp">
251 <term><filename class="libraryfile">libgpgmepp.so</filename></term>
252 <listitem>
253 <para>
[4c24eb0a]254 contains the C++ <application>GPGME</application> API functions
[48ad7d9]255 </para>
256 <indexterm zone="gpgme libgpgmepp">
257 <primary sortas="c-libgpgmepp">libgpgmepp.so</primary>
258 </indexterm>
259 </listitem>
260 </varlistentry>
261
[cd074c2]262 <varlistentry id="libqgpgme">
263 <term><filename class="libraryfile">libqgpgme.so</filename></term>
264 <listitem>
265 <para>
266 contains API functions for handling GPG operations in
[4c24eb0a]267 <application>Qt</application> applications
[cd074c2]268 </para>
269 <indexterm zone="gpgme libqgpgme">
270 <primary sortas="c-libqgpgme">libqgpgme.so</primary>
271 </indexterm>
272 </listitem>
273 </varlistentry>
274
[b358845]275 </variablelist>
276
277 </sect2>
278
279</sect1>
Note: See TracBrowser for help on using the repository browser.