USE_QT= . . . webengine . . . and libQt5WebEngine.so.5 vs. libQt5WebEngineCore.so.5 dependency failures in builds

Mark Millard marklmi at yahoo.com
Thu May 29 05:21:06 BST 2025


On May 28, 2025, at 20:00, Tatsuki Makino <tatsuki_makino at hotmail.com> wrote:

> Hello.

Hi.

I've a little more information later below, with the summary: The

/usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18

installed is the wrong type of file by its content.

> On 5/29/25 05:29, Mark Millard wrote:
>> First, for reference, showing libQt5WebEngine.so.5 provided
>> when I tried installing an official one (14.2-RELEASE context):
>> . . .
>> Yet my build experiments get a missing
>> libQt5WebEngineCore.so.5 dependency
>> (note the "Core" vs. not):
>> [00:06:41] [01] [00:00:00] Warning: py311-qt5-webengine-5.15.7 will be rebuilt as it misses libQt5WebEngineCore.so.5 which no dependency provides. This may be a port bug if it repeats next build.
>> (The rebuild does not fix the missing
>> libQt5WebEngineCore.so.5 issue.)
> 
> I have shortened the quotation a bit.
> Regarding this, I have received an email about the build errors of the official package.
> Since everything was based on the arm64 architecture, there may be particular issues occurring only with arm64.
> 
> Regards.
> 
> Below is an example of that email.
> 
> [package - 134arm64-quarterly][multimedia/openshot] Failed for openshot-3.3.0_1 in build-depends
> 
> You are receiving this mail as a port that you maintain
> is failing to build on the FreeBSD package build server.
> Please investigate the failure and submit a PR to fix
> build.
> 
> Maintainer:     tatsuki_makino at hotmail .com
> Log URL:        https://pkg-status.freebsd.org/ampere1/data/134arm64-quarterly/a764c067888b/logs/openshot-3.3.0_1.log
> Build URL:      https://pkg-status.freebsd.org/ampere1/build.html?mastername=134arm64-quarterly&build=a764c067888b
> Log:
> 
> (omitted)
> 
> ===>   openshot-3.3.0_1 depends on package: py311-qt5-webengine>=5.15.7 - not found
> ===>   Installing existing package /packages/All/py311-qt5-webengine-5.15.7.pkg
> [134arm64-quarterly-job-12] Installing py311-qt5-webengine-5.15.7...
> [134arm64-quarterly-job-12] `-- Installing qt5-webengine-5.15.18p7_2...
> [134arm64-quarterly-job-12] |   `-- Installing libXScrnSaver-1.2.4_1...
> [134arm64-quarterly-job-12] |   `-- Extracting libXScrnSaver-1.2.4_1: .......... done
> [134arm64-quarterly-job-12] |   `-- Installing libXcomposite-0.4.6_1,1...
> [134arm64-quarterly-job-12] |   `-- Extracting libXcomposite-0.4.6_1,1: .......... done
> [134arm64-quarterly-job-12] |   `-- Installing libXcursor-1.2.2...
> [134arm64-quarterly-job-12] |   `-- Extracting libXcursor-1.2.2: .......... done
> [134arm64-quarterly-job-12] |   `-- Installing libXdamage-1.1.6...
> [134arm64-quarterly-job-12] |   `-- Extracting libXdamage-1.1.6: ......... done
> [134arm64-quarterly-job-12] |   `-- Installing libpci-3.13.0...
> [134arm64-quarterly-job-12] |   | `-- Installing pciids-20250309...
> [134arm64-quarterly-job-12] |   | `-- Extracting pciids-20250309: ..... done
> [134arm64-quarterly-job-12] |   `-- Extracting libpci-3.13.0: .......... done
> [134arm64-quarterly-job-12] |   `-- Installing libxkbfile-1.1.3...
> [134arm64-quarterly-job-12] |   `-- Extracting libxkbfile-1.1.3: .......... done
> [134arm64-quarterly-job-12] |   `-- Installing re2-20240702_1...
> [134arm64-quarterly-job-12] |   `-- Extracting re2-20240702_1: .......... done
> [134arm64-quarterly-job-12] |   `-- Installing snappy-1.2.1_1...
> [134arm64-quarterly-job-12] |   `-- Extracting snappy-1.2.1_1: .......... done
> [134arm64-quarterly-job-12] `-- Extracting qt5-webengine-5.15.18p7_2: .......... done
> pkg-static: Missing shlib dependency: libQt5WebEngineCore.so.5
> 
> Failed to install the following 1 package(s): /packages/All/py311-qt5-webengine-5.15.7.pkg
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/ports/multimedia/openshot

Turns out that the install in my test build does end
up with:

 # ls -lodT /usr/local/lib/qt5/libQt5WebEngineCore*
-rw-r--r--  1 root wheel -      1670 May 11 02:05:59 2025 /usr/local/lib/qt5/libQt5WebEngineCore.prl
lrwxr-xr-x  1 root wheel -        30 May 11 02:05:59 2025 /usr/local/lib/qt5/libQt5WebEngineCore.so -> libQt5WebEngineCore.so.5.15.18
lrwxr-xr-x  1 root wheel -        30 May 11 02:05:59 2025 /usr/local/lib/qt5/libQt5WebEngineCore.so.5 -> libQt5WebEngineCore.so.5.15.18
lrwxr-xr-x  1 root wheel -        30 May 11 02:05:59 2025 /usr/local/lib/qt5/libQt5WebEngineCore.so.5.15 -> libQt5WebEngineCore.so.5.15.18
-rwxr-xr-x  1 root wheel - 111552776 May 11 02:05:58 2025 /usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18

But ldd reports:

# ldd -a /usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18 
ldd: /usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18: not a FreeBSD ELF shared object

Looking . . .

# file /usr/local/lib/qt5/libQt5WebEngineCore*
/usr/local/lib/qt5/libQt5WebEngineCore.prl:        ASCII text, with very long lines (770)
/usr/local/lib/qt5/libQt5WebEngineCore.so:         symbolic link to libQt5WebEngineCore.so.5.15.18
/usr/local/lib/qt5/libQt5WebEngineCore.so.5:       symbolic link to libQt5WebEngineCore.so.5.15.18
/usr/local/lib/qt5/libQt5WebEngineCore.so.5.15:    symbolic link to libQt5WebEngineCore.so.5.15.18
/usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9fbd42a76a98b569f691f96e85cb5dad1fc5ca81, stripped

That last is not correct for FreeBSD. Using libc.so.7 as an example:

# file /lib/libc.so.7
/lib/libc.so.7: ELF 64-bit LSB shared object, ARM aarch64, version 1 (FreeBSD), dynamically linked, for FreeBSD 14.2, stripped

Note the "(FreeBSD)" and "for FreeBSD 14.2" vs.  the "(SYSV)"
and the lack of an indication of a FreeBSD version.

By content, the wrong kind of file was built. More files have
that problem:


Lack of FreeBSD:
# file /usr/local/lib/qt5/*.so* | grep -v -e FreeBSD -e "symbolic link to "
/usr/local/lib/qt5/libQt5Pdf.so.5.15.18:              ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=7fa8f7cb66ef21beab52258eeba682910073ad4c, stripped
/usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18:    ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9fbd42a76a98b569f691f96e85cb5dad1fc5ca81, stripped

Use of SYSV (with or without FreeBSD)
# file /usr/local/lib/qt5/*.so* | grep SYSV
/usr/local/lib/qt5/libQt5Pdf.so.5.15.18:              ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=7fa8f7cb66ef21beab52258eeba682910073ad4c, stripped
/usr/local/lib/qt5/libQt5PdfWidgets.so.5.15.18:       ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, for FreeBSD 14.2, stripped
/usr/local/lib/qt5/libQt5WebEngine.so.5.15.18:        ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, for FreeBSD 14.2, stripped
/usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18:    ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=9fbd42a76a98b569f691f96e85cb5dad1fc5ca81, stripped
/usr/local/lib/qt5/libQt5WebEngineWidgets.so.5.15.18: ELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, for FreeBSD 14.2, stripped

(I am not sure of the status for the combination
"(SYSV)" with "for FreeBSD 14.2".)


For reference:

# pkg which /usr/local/lib/qt5/libQt5WebEngineCore.so.5
/usr/local/lib/qt5/libQt5WebEngineCore.so.5 was installed by package qt5-webengine-5.15.18p7_2

# pkg which /usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18 
/usr/local/lib/qt5/libQt5WebEngineCore.so.5.15.18 was installed by package qt5-webengine-5.15.18p7_2

# pkg which /usr/local/lib/qt5/libQt5Pdf.so.5.15.18
/usr/local/lib/qt5/libQt5Pdf.so.5.15.18 was installed by package qt5-webengine-5.15.18p7_2

===
Mark Millard
marklmi at yahoo.com



More information about the kde-freebsd mailing list