source: general/genlib/icu.xml@ 9b562a8

12.0 12.1 12.2 gimp3 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/for-12.3 xry111/llvm18 xry111/spidermonkey128 xry111/xf86-video-removal
Last change on this file since 9b562a8 was 959d0d2, checked in by Bruce Dubbs <bdubbs@…>, 16 months ago

Add a warning to the icu package

If upgrading to a new majore version of icu, add a warning about the
need to upgrade other packages. Also provide information about how to
test packages for conflicts.

  • Property mode set to 100644
File size: 15.4 KB
RevLine 
[627a4af]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
[32bd481]7 <!ENTITY icu-download-http
[c6b192c]8 "https://github.com/unicode-org/icu/releases/download/release-&icu-major;-&icu-minor;/icu4c-&icu-major;_&icu-minor;-src.tgz">
[627a4af]9 <!ENTITY icu-download-ftp " ">
[8f37884]10 <!ENTITY icu-md5sum "c1f94c7865846eaecbbef8546aa8126b">
[aab2a487]11 <!ENTITY icu-size "25 MB">
[8f37884]12 <!ENTITY icu-buildsize "343 MB (add 41 MB for tests)">
13 <!ENTITY icu-time "0.6 SBU (Using parallelism=4; add 1.5 SBU for tests)">
[627a4af]14]>
15
16<sect1 id="icu" xreflabel="ICU-&icu-version;">
17 <?dbhtml filename="icu.html"?>
18
19
20 <title>ICU-&icu-version;</title>
21
22 <indexterm zone="icu">
23 <primary sortas="a-ICU">ICU</primary>
24 </indexterm>
25
26 <sect2 role="package">
27 <title>Introduction to ICU</title>
28
[bda3fb1]29 <para>
30 The <application>International Components for Unicode</application> (ICU)
31 package is a mature, widely used set of C/C++ libraries providing Unicode
32 and Globalization support for software applications.
33 <application>ICU</application> is widely portable and gives applications
34 the same results on all platforms.
35 </para>
[627a4af]36
[959d0d2]37 <warning>
38 <para>
39 Upgrading this package to a new major version will require rebuilding
40 of many other packages. If some packages that use the librares built
41 by icu4c-&icu-major; are rebuilt, they will use the new libraries
42 while current packages will use the previous libraries. If the
43 linux application loader (/usr/lib/ld-linux-x86-64.so.2) determines
44 that both the old and new libraries are needed, it will probably
45 cause an address conflict when resolving needed symbols and will
46 result in the application failing.
47 </para>
48
49 <para>
50 To determine what external libraries are needed (directly or indirectly)
51 by an application or a library, run:
52 </para>
53
54<screen><userinput>ldd &lt;application or library&gt; </userinput></screen>
55
56 <para>
57 or to see only the directly needed libraries:
58 </para>
59
60<screen><userinput>readelf -d &lt;application or library&gt; | grep NEEDED</userinput></screen>
61
62 </warning>
63
[15445ab]64 &lfs113_checked;
[bd32b6fd]65
[627a4af]66 <bridgehead renderas="sect3">Package Information</bridgehead>
67 <itemizedlist spacing="compact">
68 <listitem>
[bda3fb1]69 <para>
70 Download (HTTP): <ulink url="&icu-download-http;"/>
71 </para>
[627a4af]72 </listitem>
73 <listitem>
[bda3fb1]74 <para>
75 Download (FTP): <ulink url="&icu-download-ftp;"/>
76 </para>
[627a4af]77 </listitem>
78 <listitem>
[bda3fb1]79 <para>
80 Download MD5 sum: &icu-md5sum;
81 </para>
[627a4af]82 </listitem>
83 <listitem>
[bda3fb1]84 <para>
85 Download size: &icu-size;
86 </para>
[627a4af]87 </listitem>
88 <listitem>
[bda3fb1]89 <para>
90 Estimated disk space required: &icu-buildsize;
91 </para>
[627a4af]92 </listitem>
93 <listitem>
[bda3fb1]94 <para>
95 Estimated build time: &icu-time;
96 </para>
[627a4af]97 </listitem>
98 </itemizedlist>
[38290b4]99<!--
[17f72f6]100 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
101 <itemizedlist spacing="compact">
102 <listitem>
103 <para>
104 Required patch:
105 <ulink url="&patch-root;/icu4c-&icu-version;-fix_enumeration-1.patch"/>
106 </para>
107 </listitem>
108 </itemizedlist>
[38290b4]109-->
[d20238fb]110 <bridgehead renderas="sect3">ICU Dependencies</bridgehead>
111
112 <bridgehead renderas="sect4">Optional</bridgehead>
113 <para role="optional">
[d89ea78]114 <xref linkend="llvm"/> (with Clang), and
115 <xref linkend="doxygen"/> (for documentation)
[d20238fb]116 </para>
117
[bda3fb1]118 <para condition="html" role="usernotes">
119 User Notes: <ulink url="&blfs-wiki;/icu"/>
120 </para>
[627a4af]121 </sect2>
122
123 <sect2 role="installation">
124 <title>Installation of ICU</title>
[22e8a2af]125
[4afbfbd]126 <note>
127 <para>
128 This package expands to the directory
129 <filename class='directory'>icu</filename>.
130 </para>
131 </note>
132
[22e8a2af]133 <note>
134 <para>
135 If <command>clang++</command> is available, it will be used in the
136 mistaken belief that <command>g++</command> might not support C++11,
137 even though <command>configure</command> has tested for that. If
138 using <command>g++</command> there will be an unnecessary warning at
139 the end of <command>configure</command>. Building with
140 <command>g++</command> also takes longer than the estimated SBU shown.
141 </para>
142 </note>
[38290b4]143<!--
[17f72f6]144 <para>
145 First, fix a regression in version 58.1:
146 </para>
147
148<screen><userinput>patch -p1 -i ../icu4c-&icu-version;-fix_enumeration-1.patch</userinput></screen>
[38290b4]149-->
[bda3fb1]150 <para>
151 Install <application>ICU</application> by running the following commands:
152 </para>
[627a4af]153
[86f56c1]154<!-- Review comments at:
155https://chromium.googlesource.com/chromium/src/+/e58fa0ba66272c5f28828b15d06c7e42a9882b3b
156To see if the following prebuild command is appropriate for BLFS:
157sed '/fdef U_CHARSET_I/i#define U_CHARSET_IS_UTF8 1' -i common/unicode/platform.h
158-->
[c71d0ce]159<screen><userinput>cd source &amp;&amp;
[55781c2]160
[c71d0ce]161./configure --prefix=/usr &amp;&amp;
[627a4af]162make</userinput></screen>
163
[bda3fb1]164 <para>
165 To test the results, issue: <command>make check</command>.
166 </para>
[627a4af]167
[bda3fb1]168 <para>
169 Now, as the <systemitem class="username">root</systemitem> user:
170 </para>
[627a4af]171
172<screen role="root"><userinput>make install</userinput></screen>
173 </sect2>
174
175 <sect2 role="content">
176 <title>Contents</title>
177
178 <segmentedlist>
179 <segtitle>Installed Programs</segtitle>
180 <segtitle>Installed Libraries</segtitle>
181 <segtitle>Installed Directories</segtitle>
182
183 <seglistitem>
[bda3fb1]184 <seg>
[55781c2]185 derb, escapesrc, genbrk, genccode, gencfu, gencmn, gencnval,
186 gendict, gennorm2,
[3bc05c57]187 genrb, gensprep, icu-config, icuexportdata, icuinfo, icupkg,
188 makeconv, pkgdata, and uconv
[bda3fb1]189 </seg>
190 <seg>
[55781c2]191 libicudata.so, libicui18n.so, libicuio.so,
[aaa73cfd]192 libicutest.so, libicutu.so, and libicuuc.so
[bda3fb1]193 </seg>
194 <seg>
[355495ce]195 /usr/include/unicode,
[aaa73cfd]196 /usr/lib/icu, and
[355495ce]197 /usr/share/icu
[bda3fb1]198 </seg>
[627a4af]199 </seglistitem>
200 </segmentedlist>
201
202 <variablelist>
203 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
204 <?dbfo list-presentation="list"?>
205 <?dbhtml list-presentation="table"?>
206
207 <varlistentry id="derb">
208 <term><command>derb</command></term>
209 <listitem>
[bda3fb1]210 <para>
[4c24eb0a]211 disassembles a resource bundle
[bda3fb1]212 </para>
[627a4af]213 <indexterm zone="icu derb">
214 <primary sortas="b-derb">derb</primary>
215 </indexterm>
216 </listitem>
217 </varlistentry>
218
[55781c2]219 <varlistentry id="escapesrc">
220 <term><command>escapesrc</command></term>
221 <listitem>
222 <para>
223 converts <quote>\u</quote> escaped characters into unicode
[4c24eb0a]224 characters
[55781c2]225 </para>
226 <indexterm zone="icu escapesrc">
227 <primary sortas="b-escapesrc">escapesrc</primary>
228 </indexterm>
229 </listitem>
230 </varlistentry>
231
[627a4af]232 <varlistentry id="genbrk">
233 <term><command>genbrk</command></term>
234 <listitem>
[bda3fb1]235 <para>
236 compiles ICU break iteration rules source files into binary data
[4c24eb0a]237 files
[bda3fb1]238 </para>
[627a4af]239 <indexterm zone="icu genbrk">
240 <primary sortas="b-genbrk">genbrk</primary>
241 </indexterm>
242 </listitem>
243 </varlistentry>
244
[4abd884]245 <varlistentry id="genccode">
246 <term><command>genccode</command></term>
247 <listitem>
248 <para>
249 generates C or platform specific assembly code from an ICU data
[4c24eb0a]250 file
[4abd884]251 </para>
252 <indexterm zone="icu genccode">
253 <primary sortas="b-genccode">genccode</primary>
254 </indexterm>
255 </listitem>
256 </varlistentry>
257
[bda3fb1]258 <varlistentry id="gencfu">
[627a4af]259 <term><command>gencfu</command></term>
260 <listitem>
[bda3fb1]261 <para>
262 reads in Unicode confusable character definitions and writes out the
[4c24eb0a]263 binary data
[bda3fb1]264 </para>
[627a4af]265 <indexterm zone="icu gencfu">
266 <primary sortas="b-gencfu">gencfu</primary>
267 </indexterm>
268 </listitem>
[bda3fb1]269 </varlistentry>
[627a4af]270
[4abd884]271 <varlistentry id="gencmn">
272 <term><command>gencmn</command></term>
273 <listitem>
274 <para>
[4c24eb0a]275 generates an ICU memory-mappable data file
[4abd884]276 </para>
277 <indexterm zone="icu gencmn">
278 <primary sortas="b-gencmn">gencmn</primary>
279 </indexterm>
280 </listitem>
281 </varlistentry>
282
[627a4af]283 <varlistentry id="gencnval">
284 <term><command>gencnval</command></term>
285 <listitem>
[bda3fb1]286 <para>
[4c24eb0a]287 compiles the converter's aliases file
[bda3fb1]288 </para>
[627a4af]289 <indexterm zone="icu gencnval">
290 <primary sortas="b-gencnval">gencnval</primary>
291 </indexterm>
292 </listitem>
293 </varlistentry>
294
[4abd884]295 <varlistentry id="gendict">
296 <term><command>gendict</command></term>
[627a4af]297 <listitem>
[bda3fb1]298 <para>
[4c24eb0a]299 compiles word lists into ICU string trie dictionaries
[bda3fb1]300 </para>
[4abd884]301 <indexterm zone="icu gendict">
302 <primary sortas="b-gendict">gendict</primary>
[627a4af]303 </indexterm>
304 </listitem>
305 </varlistentry>
306
[7e2908c]307 <varlistentry id="gennorm2">
308 <term><command>gennorm2</command></term>
309 <listitem>
310 <para>
[4c24eb0a]311 builds binary data files with Unicode normalization data
[7e2908c]312 </para>
313 <indexterm zone="icu gennorm2">
314 <primary sortas="b-gennorm2">gennorm2</primary>
315 </indexterm>
316 </listitem>
317 </varlistentry>
318
[627a4af]319 <varlistentry id="genrb">
320 <term><command>genrb</command></term>
321 <listitem>
[bda3fb1]322 <para>
[4c24eb0a]323 compiles a resource bundle
[bda3fb1]324 </para>
[627a4af]325 <indexterm zone="icu genrb">
326 <primary sortas="b-genrb">genrb</primary>
327 </indexterm>
328 </listitem>
329 </varlistentry>
330
[4abd884]331 <varlistentry id="gensprep">
332 <term><command>gensprep</command></term>
333 <listitem>
334 <para>
[4c24eb0a]335 compiles StringPrep data from filtered RFC 3454 files
[4abd884]336 </para>
337 <indexterm zone="icu gensprep">
338 <primary sortas="b-gensprep">gensprep</primary>
339 </indexterm>
340 </listitem>
341 </varlistentry>
342
[627a4af]343 <varlistentry id="icu-config">
344 <term><command>icu-config</command></term>
345 <listitem>
[bda3fb1]346 <para>
[4c24eb0a]347 outputs ICU build options
[bda3fb1]348 </para>
[627a4af]349 <indexterm zone="icu icu-config">
350 <primary sortas="b-icu-config">icu-config</primary>
351 </indexterm>
352 </listitem>
353 </varlistentry>
354
[bda3fb1]355 <varlistentry id="icuinfo">
356 <term><command>icuinfo</command></term>
357 <listitem>
358 <para>
[4c24eb0a]359 outputs configuration information about the current ICU
[bda3fb1]360 </para>
361 <indexterm zone="icu icuinfo">
362 <primary sortas="b-icuinfo">icuinfo</primary>
363 </indexterm>
364 </listitem>
365 </varlistentry>
366
[4abd884]367 <varlistentry id="icupkg">
368 <term><command>icupkg</command></term>
369 <listitem>
370 <para>
[4c24eb0a]371 extracts or modifies an ICU .dat archive
[4abd884]372 </para>
373 <indexterm zone="icu icupkg">
374 <primary sortas="b-icupkg">icupkg</primary>
375 </indexterm>
376 </listitem>
377 </varlistentry>
378
[627a4af]379 <varlistentry id="makeconv">
380 <term><command>makeconv</command></term>
381 <listitem>
[bda3fb1]382 <para>
[4c24eb0a]383 compiles a converter table
[bda3fb1]384 </para>
[627a4af]385 <indexterm zone="icu makeconv">
386 <primary sortas="b-makeconv">makeconv</primary>
387 </indexterm>
388 </listitem>
389 </varlistentry>
390
391 <varlistentry id="pkgdata">
392 <term><command>pkgdata</command></term>
393 <listitem>
[bda3fb1]394 <para>
[4c24eb0a]395 packages data for use by ICU
[bda3fb1]396 </para>
[627a4af]397 <indexterm zone="icu pkgdata">
398 <primary sortas="b-pkgdata">pkgdata</primary>
399 </indexterm>
400 </listitem>
401 </varlistentry>
402
403 <varlistentry id="uconv">
404 <term><command>uconv</command></term>
405 <listitem>
[bda3fb1]406 <para>
[4c24eb0a]407 converts data from one encoding to another
[bda3fb1]408 </para>
[627a4af]409 <indexterm zone="icu uconv">
410 <primary sortas="b-uconv">uconv</primary>
411 </indexterm>
412 </listitem>
413 </varlistentry>
414
415 <varlistentry id="libicudata">
[4abd884]416 <term><filename class="libraryfile">libicudata.so</filename></term>
[627a4af]417 <listitem>
[bda3fb1]418 <para>
[4c24eb0a]419 is the data library
[bda3fb1]420 </para>
[627a4af]421 <indexterm zone="icu libicudata">
[099ebaf]422 <primary sortas="c-libicudata">libicudata.so</primary>
[627a4af]423 </indexterm>
424 </listitem>
425 </varlistentry>
426
427 <varlistentry id="libicui18n">
[4abd884]428 <term><filename class="libraryfile">libicui18n.so</filename></term>
[627a4af]429 <listitem>
[bda3fb1]430 <para>
[4c24eb0a]431 is the internationalization (i18n) library
[bda3fb1]432 </para>
[627a4af]433 <indexterm zone="icu libicui18n">
[099ebaf]434 <primary sortas="c-libicui18n">libicui18n.so</primary>
[627a4af]435 </indexterm>
436 </listitem>
437 </varlistentry>
438
439 <varlistentry id="libicuio">
[4abd884]440 <term><filename class="libraryfile">libicuio.so</filename></term>
[627a4af]441 <listitem>
[bda3fb1]442 <para>
[4c24eb0a]443 is the ICU I/O (unicode stdio) library
[bda3fb1]444 </para>
[627a4af]445 <indexterm zone="icu libicuio">
[099ebaf]446 <primary sortas="c-libicuio">libicuio.so</primary>
[627a4af]447 </indexterm>
448 </listitem>
449 </varlistentry>
450
[22e8a2af]451<!-- <varlistentry id="libicule">
[4abd884]452 <term><filename class="libraryfile">libicule.so</filename></term>
[627a4af]453 <listitem>
[bda3fb1]454 <para>
455 is the layout engine.
456 </para>
[627a4af]457 <indexterm zone="icu libicule">
[099ebaf]458 <primary sortas="c-libicule">libicule.so</primary>
[627a4af]459 </indexterm>
460 </listitem>
461 </varlistentry>
462
463 <varlistentry id="libiculx">
[4abd884]464 <term><filename class="libraryfile">libiculx.so</filename></term>
[627a4af]465 <listitem>
[bda3fb1]466 <para>
467 is the layout extensions engine.
468 </para>
[627a4af]469 <indexterm zone="icu libiculx">
[099ebaf]470 <primary sortas="c-libiculx">libiculx.so</primary>
[627a4af]471 </indexterm>
472 </listitem>
[22e8a2af]473 </varlistentry>-->
[627a4af]474
[bda3fb1]475 <varlistentry id="libicutest">
[4abd884]476 <term><filename class="libraryfile">libicutest.so</filename></term>
[bda3fb1]477 <listitem>
478 <para>
[4c24eb0a]479 is the test library
[bda3fb1]480 </para>
481 <indexterm zone="icu libicutest">
482 <primary sortas="c-libicutest">libicutest.so</primary>
483 </indexterm>
484 </listitem>
485 </varlistentry>
486
[627a4af]487 <varlistentry id="libicutu">
[4abd884]488 <term><filename class="libraryfile">libicutu.so</filename></term>
[627a4af]489 <listitem>
[bda3fb1]490 <para>
[4c24eb0a]491 is the tool utility library
[bda3fb1]492 </para>
[627a4af]493 <indexterm zone="icu libicutu">
[099ebaf]494 <primary sortas="c-libicutu">libicutu.so</primary>
[627a4af]495 </indexterm>
496 </listitem>
497 </varlistentry>
498
499 <varlistentry id="libicuuc">
[4abd884]500 <term><filename class="libraryfile">libicuuc.so</filename></term>
[627a4af]501 <listitem>
[bda3fb1]502 <para>
[4c24eb0a]503 is the common library
[bda3fb1]504 </para>
[627a4af]505 <indexterm zone="icu libicuuc">
[099ebaf]506 <primary sortas="c-libicuuc">libicuuc.so</primary>
[627a4af]507 </indexterm>
508 </listitem>
509 </varlistentry>
[355495ce]510
[627a4af]511 </variablelist>
[355495ce]512
[627a4af]513 </sect2>
[355495ce]514
[627a4af]515</sect1>
Note: See TracBrowser for help on using the repository browser.