source: x/lib/qtwebengine.xml@ d885388

11.0 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 d885388 was d885388, checked in by Ken Moffat <ken@…>, 3 years ago

Update to qtwebengine-5.15.6.

I'm not happy about the wording for recommended dependencies,
ideally jhalfs should "do the right thing" and build libxml2
after icu - but I have no idea how to force that.

Traditionally we do not list every dependency which is pulled in
by another dep, but some time ago Doug discovered that system ICU
is only used by qtwebengine if libxml2 has been built after ICU.

Although I'm hopeful that the current instructions will work in
that case, adding a shipped copy of ICU just makes the build
bigger.

  • Property mode set to 100644
File size: 25.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 qtwebengine-major "5.15">
8<!-- URL if there is a public release
9 <!ENTITY qtwebengine-download-http "https://download.qt.io/archive/qt/&qtwebengine-major;/&qtwebengine-version;/submodules/qtwebengine-everywhere-src-&qtwebengine-version;.tar.xz">
10 URL for a prepared git version -->
11 <!ENTITY qtwebengine-download-http "&sources-anduin-http;/qtwebengine/qtwebengine-&qtwebengine-version;.tar.xz">
12 <!ENTITY qtwebengine-download-ftp " ">
13 <!ENTITY qtwebengine-md5sum "af799617842cca0b765102c312fbdd46">
14 <!ENTITY qtwebengine-size "306 MB">
15 <!ENTITY qtwebengine-buildsize "5.1 GB (154 MB installed)">
16 <!ENTITY qtwebengine-time "97 SBU (typical, Using parallelism=4)">
17]>
18
19<sect1 id="qtwebengine" xreflabel="qtwebengine-&qtwebengine-version;">
20 <?dbhtml filename="qtwebengine.html"?>
21
22 <sect1info>
23 <date>$Date$</date>
24 </sect1info>
25
26 <title>QtWebEngine-&qtwebengine-version;</title>
27
28 <indexterm zone="qtwebengine">
29 <primary sortas="a-qtwebengine">qtwebengine</primary>
30 </indexterm>
31
32 <sect2 role="package">
33 <title>Introduction to QtWebEngine</title>
34
35 <para>
36 <application>QtWebEngine</application> integrates
37 <application>chromium</application>'s web capabilities into Qt. It
38 ships with its own copy of ninja which it uses for the build if it cannot
39 find a system copy, and various copies of libraries from ffmpeg, icu,
40 libvpx, and zlib (including libminizip) which have been forked by the
41 <application>chromium</application> developers.
42 </para>
43
44 <para>
45 This package and browsers using it may be useful if you need to use a
46 website designed for google chrome, or chromium, browsers.
47 </para>
48
49 <!-- Note for editors re switching between git versions and releases:
50 If a public release of Qt 5.15.3 (or later) appears in a meaningful
51 time frame, please keep the notes re the git build, as comments, so
52 that updating for later fixes will be easier: in the past, updates
53 of 'stable' versions (i.e. 5.12 when 5.14, 5.15 were the newest)
54 happened much later than updates to the newest version (now Qt6)
55 and it seems likely we might again need to use a git version to fix
56 future chromium vulnerabilities. -->
57
58 <warning>
59 <para>
60 QtWebEngine uses a forked copy of chromium, and is therefore vulnerable
61 to many issues found there. The Qt developers have always preferred to
62 make releases at the same time as the rest of Qt (rather than adding
63 emergency fixes), but with stable versions getting released after the
64 current development version. Now that they are keen to move to Qt6, the
65 5.15.3 and later Qt-5.15 releases are initially only available to paying
66 customers. QtWebEngine is something of an exception because of its LGPL
67 licence, but getting the git sources (with the forked chromium submodule)
68 to a position where they will successfully build on a current BLFS system
69 can take a lot of effort and therefore updates to the book may be delayed.
70 </para>
71
72 <para>
73 It seems likely that future 5.15-series versions will also be released
74 long after the chromium vulnerabilities are known, but fixes for
75 QtWebEngine can be found in git and the editors take the view that
76 known vulnerabilities in browsers should be fixed.
77 </para>
78
79 <para> <!-- for git versions -->
80 The tarball linked to below was created from the 5.15.6 git branch
81 and the 87-branch of the chromium submodule (which is forked from
82 chromium). See the GIT-VERSIONS file in the tarball (after applying
83 any patches) for details of the latest commits.
84 </para>
85 </warning>
86
87 <!-- note for editors on obtaining webengine from git.
88 First (if you do not already have a past version)
89 git clone git://code.qt.io/qt/qtwebengine.git
90 git submodule init -
91 that will report qtwebengine-chromium.git registered for src/3rdparty
92 now find the main branch names:
93 git fetch origin
94 git branch -r
95 after a release is prepared (even if the rest is not public), the 5.15
96 branch now seems to get updated and might be what you want. But in the
97 approach to 5.15.6 the backported CVE and other security fixes were only
98 applied to 5.15.6. So, assuming that a 5.15.7 branch now exists,
99 git checkout origin/5.15.7
100 Confirm that HEAD is where you expected.
101 Now go to src/3rdparty
102 git fetch origin
103 git branch -r
104 The required branch is likely to be 87-branch unless there is a newer one
105 mentioned in the 5.15 cgit web page (below).
106 git checkout origin/87-branch (or whatever)
107 Use git log or git tk to look at its HEAD and check it seems appropriate.
108
109 To decide when it might be worth creating a new tarball, periodically keep
110 an eye on https://code.qt.io/cgit/qt/qtwebengine.git/ (currently, the 5.15.6
111 branch, 5.15.7 might get used later). The interesting items are CVE fixes
112 for known chromium vulnerabilities, as well as numbered Security bugs -
113 again, these relate to chromium.
114
115 When I noticed some updates in late March I was searching for one of the
116 CVEs mentioned, and google found a link to a review page for Michael Brüning
117 at https://codereview.qt.nokia.com/q/owner:michael.bruning%2540qt.io. At that
118 time I could see various unmerged items, so I waited. The items for the
119 90-based chromium module are not relevant to 5.15-series (possibly they will
120 be for qtwebengine-6+). Review queues for other Qt employees might be found
121 in a similar way, but remember that everythng EXCEPT qtwebengine and chromium
122 is private to Qt until they choose to release it.
123
124 NOTE: the 3rdparty/chromium tree may contain more patches than have been
125 merged into the current 5.15.x branch. Any patches after what was in the
126 last 'update chromium' merge in qtwebengine occasionally break the build.
127
128 After merging the contents of the qtwebengine and src/3rdparty git extracts,
129 in the top level please create a GIT-VERSIONS file summarising the HEAD
130 commits of both parts, as a reminder of where we are up to. I've nove added
131 a CVE-fixes to keep track of what has been fixed (comits before 5.15.2 did not
132 mention the CVEs until they were detailed in a release).
133
134 Now create tarballs - 'git archive' does not work across submodule boundaries,
135 so you need to create one archive from the top of qtwebengine/ and another
136 from the top of src/3rdparty (chromium, gn, ninja are apparently all part of
137 the qtwebengine-chromium module). Then in a work area untar the qtwebengine
138 tarball, go down to src/3rdparty and untar the submodule tarball.
139 Decide on what to call the result and create a full xz tarball using tar -cJf.
140
141 UPDATE: Since we have to host the tarball, and it is over 300MB, it makes
142 sense to create a patch for subsequent fixes (for the first version, 314KB
143 including the updates to the GIT-VERSIONS file). For future updates, view
144 the current updates patch to see the previous commits. When the new commits
145 have been applied, rename the updated version to 'b', but untar the
146 unpatched tarball as 'a' and then diff a to b in the usual manner to get
147 all updates since the tarball was created.
148
149 For our own releases, probably best to create a fresh tarball.
150
151 end of note for editors -->
152
153 &lfs101_checked;
154
155 <note>
156 <para>
157 By default, ninja will use all online CPUs +2 (if at least 4 exist),
158 even if they are not available to the current task because the build
159 terminal has been restricted with 'taskset'. To work around this, see
160 the Command Explanations below.
161 </para>
162
163 <para>
164 Unusually, the shipped GN build system (used to create the Ninja files)
165 requires a static <filename class="libraryfile">libstdc++.a</filename>
166 although the installed libraries correctly use the shared version. If
167 that static library is not present, the build will fail quite quickly.
168 Please note that if you try to build webengine as part of
169 <application>Qt</application> and the static library is not available,
170 that build will either complete without installing webengine, or else
171 fail during the install (both variants were observed in 5.12.0).
172 </para>
173 </note>
174
175 <bridgehead renderas="sect3">Package Information</bridgehead>
176 <itemizedlist spacing="compact">
177 <listitem>
178 <para>
179 Download (HTTP): <ulink url="&qtwebengine-download-http;"/>
180 </para>
181 </listitem>
182 <listitem>
183 <para>
184 Download (FTP): <ulink url="&qtwebengine-download-ftp;"/>
185 </para>
186 </listitem>
187 <listitem>
188 <para>
189 Download MD5 sum: &qtwebengine-md5sum;
190 </para>
191 </listitem>
192 <listitem>
193 <para>
194 Download size: &qtwebengine-size;
195 </para>
196 </listitem>
197 <listitem>
198 <para>
199 Estimated disk space required: &qtwebengine-buildsize;
200 </para>
201 </listitem>
202 <listitem>
203 <para>
204 Estimated build time: &qtwebengine-time;
205 </para>
206 </listitem>
207 </itemizedlist>
208
209 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
210 <itemizedlist spacing="compact">
211 <listitem>
212 <para>
213 Required patch:
214 <!-- keep links for releases and git versions as a reminder
215 that the tarball names names differ
216 <ulink url="&patch-root;/qtwebengine-everywhere-src-&qtwebengine-version;-ICU68-2.patch"/> -->
217 <!--
218 <ulink url="&patch-root;/qtwebengine-&qtwebengine-version;-upstream_fixes-2.patch"/>
219 </para>
220 </listitem>
221 <listitem>
222 <para>
223 Required patch:-->
224 <ulink url="&patch-root;/qtwebengine-&qtwebengine-version;-build_fixes-1.patch"/>
225 </para>
226 </listitem>
227 </itemizedlist>
228
229 <bridgehead renderas="sect3">qtwebengine Dependencies</bridgehead>
230
231 <bridgehead renderas="sect4">Required</bridgehead>
232 <!-- the qmake output tends to be misleading. 'khr' is from Mesa -->
233 <para role="required">
234 <xref linkend="nodejs"/>,
235 <xref linkend="nss"/>,
236 <xref linkend="python2"/>, and
237 <xref linkend='qt5'/>
238 </para>
239
240 <bridgehead renderas="sect4">Recommended</bridgehead>
241 <note>
242 <para>
243 If these packages are not installed, the build process will compile and
244 install its own (perhaps older) version, with the side effect of
245 increasing build and installed disk space and build time.
246 </para>
247 </note>
248
249 <para role="recommended">
250 either <xref linkend="alsa-lib"/> or
251 <xref linkend="pulseaudio"/> (or both),
252 <xref linkend="ffmpeg"/>,
253 <!-- awkward wording - libxslt needs libxml2, if libxml2 is built
254 before icu then the *shipped* icu will be used -->
255 <xref linkend="icu"/> (built before <xref linkend="libxml2"/>) ,
256 <xref linkend="libwebp"/>,
257 <xref linkend="libxslt"/>, and
258 <xref linkend="opus"/>
259 </para>
260
261 <bridgehead renderas="sect4">Optional</bridgehead>
262 <para role="optional">
263 <xref linkend="libevent"/>,
264 <xref linkend="pipewire"/>,
265 <xref linkend="poppler"/>,
266 <ulink url="https://github.com/open-source-parsers/jsoncpp/releases">jsoncpp</ulink>,
267 <ulink url="https://github.com/cisco/libsrtp/releases">libsrtp</ulink>,
268 <ulink url="http://google.github.io/snappy/">snappy</ulink>
269 </para>
270
271 <para condition="html" role="usernotes">
272 User Notes: <ulink url="&blfs-wiki;/qtwebengine"/>
273 </para>
274 </sect2>
275
276 <sect2 role="installation">
277 <title>Installation of qtwebengine</title>
278
279 <note>
280 <para>
281 Unlike version 5.15.2, the chromium-derived build system now needs
282 <command>python</command> to be available and to be python2. In
283 BLFS-10.1 the creation of the python symlink was removed as a step
284 towards eventually getting rid of python2 (other old packages which
285 need python2 usually work by invoking python2). If you are still
286 using an earlier version of BLFS where
287 <filename>/usr/bin/python</filename> exists, you can skip the
288 commands to create the symlink, and to later remove it.
289 </para>
290 </note>
291
292 <para>
293 First, as the <systemitem class="username">root</systemitem>
294 user, create the python symlink:
295 </para>
296
297<screen role="root"><userinput>ln -svf /usr/bin/python{2,}</userinput></screen>
298
299<!-- retain, there might later be a patch rather than a full 306MB tarball
300 <para>
301 Now apply a patch for security and other fixes:
302 </para>
303
304<screen><userinput remap="pre">patch -Np1 -i ../qtwebengine-&qtwebengine-version;-upstream_fixes-2.patch</userinput></screen>-->
305
306 <para>
307 Apply apply a patch to fix several issues that can prevent the build working:
308 </para>
309
310<screen><userinput remap="pre">patch -Np1 -i ../qtwebengine-&qtwebengine-version;-build_fixes-1.patch</userinput></screen>
311
312<!-- start of commands for git versions only -->
313 <para>
314 Although the patch has ensured that git is not invoked during the build,
315 the build system has labyrinthine rules of byzantine complexity, and in
316 particular trying to build without two <filename>.git</filename> directories
317 will lead to it eventually falling into unexpected and unbuildable code
318 which references a private header that has not been created. Avoid this
319 by creating the required directories:
320 </para>
321
322<screen><userinput>mkdir -pv .git src/3rdparty/chromium/.git</userinput></screen>
323
324 <para>
325 Because this version of qtwebengine is aimed at a later release than the
326 current public releases, change it to build for qt-&qt5-version; using a
327 sed:
328 </para>
329
330<screen><userinput>sed -e '/^MODULE_VERSION/s/5.*/&qt5-version;/' -i .qmake.conf</userinput></screen>
331<!-- end of commands for git versions only -->
332
333 <para>
334 Now, ensure that the local headers are available when not building as
335 part of the complete <xref linkend="qt5"/>:
336 </para>
337
338<screen><userinput>find -type f -name "*.pr[io]" |
339 xargs sed -i -e 's|INCLUDEPATH += |&amp;$$QTWEBENGINE_ROOT/include |'</userinput></screen>
340
341 <para>
342 Next, allow the pulseaudio library to be linked at build time, instead
343 of run time. This also prevents an issue with newer pulseaudio:
344 </para>
345
346<screen><userinput>sed -e '/link_pulseaudio/s/false/true/' \
347 -i src/3rdparty/chromium/media/media_options.gni</userinput></screen>
348
349 <para>
350 Finally, fix a change in the build system which allows its developers to
351 pass e.g. -j20 to make (for quick tests of some areas) but breaks the
352 build with LFS's use of the NINJAJOBS environment variable:
353 </para>
354
355<!-- editors: See thread at
356http://lists.linuxfromscratch.org/pipermail/blfs-dev/2019-December/036996.html
357et.seq, particularly 037002.html which shows the commit near the end. -->
358
359<screen><userinput>sed -i 's/NINJAJOBS/NINJA_JOBS/' src/core/gn_run.pro</userinput></screen>
360
361<!-- now that we always install this as 5.15.2, this seems to be redundant
362 <para>
363 If an older version of the package's main library has been installed,
364 when the package is built separately it will link to that in preference
365 to its own not-yet-installed version, and fail because of missing symbols.
366 Prevent that by, as the <systemitem class="username">root</systemitem>
367 user, moving the symlink out of the way:
368 </para>
369
370<screen role="root"><userinput>if [ -e ${QT5DIR}/lib/libQt5WebEngineCore.so ]; then
371 mv -v ${QT5DIR}/lib/libQt5WebEngineCore.so{,.old}
372fi</userinput></screen>-->
373
374 <para>
375 Install <application>qtwebengine</application> by running the following
376 commands:
377 </para>
378
379<screen><userinput>mkdir build &amp;&amp;
380cd build &amp;&amp;
381qmake .. -- -system-ffmpeg -webengine-icu &amp;&amp;
382make</userinput></screen>
383
384<!--
385 <para>
386 if you wish to build the HTML documentation, issue:
387 </para>
388
389<screen><userinput>make docs</userinput></screen>
390-->
391 <para>
392 This package does not come with a test suite.
393 </para>
394
395 <para>
396 Now, as the <systemitem class="username">root</systemitem> user:
397 </para>
398
399<screen role="root"><userinput>make install</userinput></screen>
400
401 <!-- EDITORS NOTE: If you are updating this package, use INSTALL_ROOT=
402 instead of DESTDIR= -->
403<!--
404 <para>
405 If you built the HTML documentation, install it with:
406 </para>
407
408<screen role="root"><userinput>make install_docs</userinput></screen>
409-->
410 <para>
411 Remove references to the build directory from installed library
412 dependency (prl) files by running the following
413 commands as the <systemitem class="username">root</systemitem> user:
414 </para>
415
416<screen role="root"><userinput>find $QT5DIR/ -name \*.prl \
417 -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;</userinput></screen>
418
419 <para>
420 Finally, as the <systemitem class="username">root</systemitem>
421 user, remove the python symlink:
422 </para>
423
424<screen role="root"><userinput>rm -v /usr/bin/python</userinput></screen>
425 </sect2>
426
427 <sect2 role="commands">
428 <title>Command Explanations</title>
429
430 <para>
431 <command>qmake</command>: This will build the included copy of
432 <application>ninja</application> if it is not already installed
433 and use it to configure the build.
434 </para>
435
436 <para>
437 <command>-- -system-ffmpeg -webengine-icu</command>: If any options are
438 passed to qmake they must come after '--' which must follow '..' that points
439 to the main directory. The options here cause it to use system ffmpeg and
440 system icu. If built as part of full Qt5, the system icu is automatically
441 used (only) by Qt5Core if it is available, but unless this option is used
442 webengine will always use its shipped copy of icu, adding time and space
443 to the build.
444 </para>
445
446 <para>
447 <option>-webengine-jumbo-build 0</option>: If this is added to the qmake
448 command it will cause the 'Jumbo Build Merge Limit' to be reported as 'no'
449 instead of 8. That turns off the jumbo build. Some distros do that to get
450 a smaller build on some architectures such as MIPS. On x86_64 it might save
451 a little space in the build, but the build time will increase by a very
452 large amount.
453 </para>
454
455 <!--
456 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
457 href="../../xincludes/SIOCGSTAMP.xml"/>
458 -->
459
460 <para>
461 <option>NINJAJOBS=4 make</option>: If you patched system ninja in LFS to
462 recognize the NINJAJOBS environment variable, this command will run system
463 ninja with the specified number of jobs (i.e. 4).
464 There are several reasons why you might want to use options like this this:
465 </para>
466
467 <itemizedlist>
468 <listitem>
469 <para>
470 Building on a subset of CPUs allows measuring the build time
471 for a smaller number of processors, and/or running other
472 CPU-intensive tasks at the same time. For an editor on a machine
473 with a lot of CPUs, trying to measure the build time for a 4-CPU
474 machine, <option>NINJAJOBS=4 make</option> will give a reasonable
475 approximation (there is a short period where N+2 python2 and node
476 jobs run).
477 </para>
478 </listitem>
479 <listitem>
480 <para>
481 On a machine with only 4 CPUs online, the default of scheduling
482 N+2 jobsi for qtwebengine is slower by between 3% and 7%, probably
483 because of the size of the C++ files and their many includes and
484 templates. Therefore, if in doubt set NINJAJOBS to the number of CPUs.
485 </para>
486 </listitem>
487 <listitem>
488 <para>
489 Reducing the number of cores being used on long running, CPU
490 intensive packages may alleviate heat problems.
491 </para>
492 </listitem>
493 </itemizedlist>
494
495 </sect2>
496
497 <sect2 role="configuration">
498 <title>Configuring QtWebEngine</title>
499
500 <sect3 id="qtwebengine-config">
501 <title>Configuration Information</title>
502
503 <para>
504 If you are upgrading from an older minor version of this
505 application, for some webpages to load you may need to
506 clear the <emphasis>browser</emphasis> caches, e.g. for
507 <application>falkon</application> they will be found in
508 <filename class="directory">~/.cache/falkon/</filename>.
509 You will need to do this if the browser starts to render
510 the page and then changes to a blank tab with a message
511 that something went wrong, and a button to Retry. Even
512 after removing the old caches, you may need to retry a
513 few times for each affected tab.
514 </para>
515
516 <para>
517 If a browser using this package fails to run and when run
518 from a term it reports 'Trace/breakpoint trap' that is
519 probably a kernel configuration issue - there is no need
520 to rebuild QtWebEngine, see the next section, recompile
521 the kernel and reboot to the new kernel.
522 </para>
523
524 </sect3>
525
526 </sect2>
527
528 <sect2 role="kernel" id="qtwebengine-kernel">
529 <title>Kernel Configuration</title>
530
531 <para>
532 This package does not require any of the optional kernel namespace items,
533 but if User namespace is enabled <phrase revision="systemd">(as happens
534 in some unit files, for hardening)</phrase> PID namespace must also be
535 enabled. In that case enable the following options in the kernel
536 configuration and recompile the kernel if necessary:
537 </para>
538
539<!-- Spaces are significant in <screen> sections -->
540<screen><literal>General setup ---&gt;
541 -*- Namespaces support ---&gt;
542 [ ] User namespace [CONFIG_USER_NS]
543 [*] PID namespace [CONFIG_PID_NS]</literal></screen>
544
545 <indexterm zone="qtwebengine qtwebengine-kernel">
546 <primary sortas="d-qtwebengine">qtwebengine</primary>
547 </indexterm>
548 </sect2>
549
550 <sect2 role="content">
551 <title>Contents</title>
552
553 <segmentedlist>
554 <segtitle>Installed Programs</segtitle>
555 <segtitle>Installed Libraries</segtitle>
556 <segtitle>Installed Directories</segtitle>
557
558 <seglistitem>
559 <seg>
560 qtwebengine_convert_dict and
561 QtWebEngineProcess (in $QT5DIR/libexec)
562 </seg>
563 <seg>
564 libQt5Pdf.so,
565 libQt5PdfWidgets.so,
566 libQt5WebEngineCore.so,
567 libQt5WebEngine.so, and
568 libQt5WebEngineWidgets.so
569 </seg>
570 <seg>
571 $QT5DIR/include/QtPdf,
572 $QT5DIR/include/QtPdfWidgets,
573 $QT5DIR/include/QtWebEngine,
574 $QT5DIR/include/QtWebEngineCore,
575 $QT5DIR/include/QtWebEngineWidgets,
576 $QT5DIR/qml/QtWebEngine, and
577 $QT5DIR/translations/qtwebengine_locales
578 </seg>
579 </seglistitem>
580 </segmentedlist>
581
582 <variablelist>
583 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
584 <?dbfo list-presentation="list"?>
585 <?dbhtml list-presentation="table"?>
586
587 <varlistentry id="qtwebengine_convert_dict">
588 <term><command>qtwebengine_convert_dict</command></term>
589 <listitem>
590 <para>
591 converts hunspell dictionaries (<literal>.dic</literal>) to chromium
592 format (<literal>.bdic</literal>)
593 </para>
594 <indexterm zone="qtwebengine qtwebengine_convert_dict">
595 <primary sortas="b-qtwebengine_convert_dict">qtwebengine_convert_dict</primary>
596 </indexterm>
597 </listitem>
598 </varlistentry>
599
600 <varlistentry id="QtWebEngineProcess">
601 <term><command>QtWebEngineProcess</command></term>
602 <listitem>
603 <para>
604 is a libexec program which runs a zygote process (one that listens
605 for spawn requests from a master process and will fork itself in
606 response)
607 </para>
608 <indexterm zone="qtwebengine QtWebEngineProcess">
609 <primary sortas="b-QtWebEngineProcess">QtWebEngineProcess</primary>
610 </indexterm>
611 </listitem>
612 </varlistentry>
613
614 <varlistentry id="libQtWebEngine-lib">
615 <term><filename class="libraryfile">libQtWebEngine.so</filename></term>
616 <listitem>
617 <para>
618 provides QML types for rendering web content within a QML application
619 </para>
620 <indexterm zone="qtwebengine libQtWebEngine-lib">
621 <primary sortas="c-libQtWebEngine">libQtWebEngine.so</primary>
622 </indexterm>
623 </listitem>
624 </varlistentry>
625
626 <varlistentry id="libQtWebEngineCore">
627 <term><filename class="libraryfile">libQtWebEngineCore.so</filename></term>
628 <listitem>
629 <para>
630 provides public API shared by both QtWebEngine and QtWebEngineWidgets
631 </para>
632 <indexterm zone="qtwebengine libQtWebEngineCore">
633 <primary sortas="c-libQtWebEngineCore">libQtWebEngineCore.so</primary>
634 </indexterm>
635 </listitem>
636 </varlistentry>
637
638 <varlistentry id="libQtWebEngineWidgets">
639 <term><filename class="libraryfile">libQtWebEngineWidgets.so</filename></term>
640 <listitem>
641 <para>
642 provides a web browser engine as well as C++ classes to render and
643 interact with web content
644 </para>
645 <indexterm zone="qtwebengine libQtWebEngineWidgets">
646 <primary sortas="c-libQtWebEngineWidgets">libQtWebEngineWidgets.so</primary>
647 </indexterm>
648 </listitem>
649 </varlistentry>
650
651 </variablelist>
652 </sect2>
653
654</sect1>
Note: See TracBrowser for help on using the repository browser.