Introduction to QtWebEngine
QtWebEngine integrates
chromium"s web capabilities into
Qt. It ships with its own copy of ninja which it uses for the build
if it cannot find a system copy, and various copies of libraries
from ffmpeg, icu, libvpx, and zlib (including libminizip) which
have been forked by the chromium
developers.
This package is known to build and work properly using an LFS-8.3
platform.
Note
By default, ninja will use all online CPUs +2 (if at least 4
exist), even if they are not available to the current task
because the build terminal has been restricted with 'taskset'. To
work around this, see the Command Explanations below.
Package Information
qtwebengine Dependencies
Required
NSS-3.38, PulseAudio-12.2, and Qt-5.11.1
Recommended
Note
If these packages are not installed, the build process will
compile and install its own (perhaps older) version, with the
side effect of increasing build and installed disk space and
build time.
libwebp-1.0.0, libxslt-1.1.32, and Opus-1.2.1
Optional
libevent-2.1.8, jsoncpp,
libsrtp, snappy
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/qtwebengine
Installation of qtwebengine
Install qtwebengine by running the
following commands:
mkdir build &&
cd build &&
qmake .. &&
make
This package does not come with a test suite.
Now, as the root
user:
make install
Remove references to the build directory from installed library
dependency (prl) files by running the following commands as the
root
user:
find $QT5DIR/ -name \*.prl \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
Command Explanations
qmake: This will
build the included copy of ninja
if it is not already installed and use it to configure the build.
NINJAJOBS=4 make
: If you patched system
ninja in LFS to recognize the NINJAJOBS environment variable, this
command will run system ninja with the specified number of jobs
(i.e. 4). Among the reasons why you might want to do this are:
building on a subset of CPUs, either to measure the build time for
that number of processors or to run other CPU-intensive tasks on
other cores, or to improve the build speed on a less-well endowed
4-core machine. On a machine with a powerful CPU and plenty of RAM,
running N+2 jobs (the ninja default for 4+ cores) for the large
working sets of the C++ compiles in this package is typically only
marginally slower than running 4 jobs at a time. But for a machine
with less memory it might be much slower.