Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1310753 - qt5-qtwebengine FTBFS on aarch64
Summary: qt5-qtwebengine FTBFS on aarch64
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: qt5-qtwebengine
Version: 24
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Kevin Kofler
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1311125
Blocks: ARM64, F-ExcludeArch-aarch64
TreeView+ depends on / blocked
 
Reported: 2016-02-22 15:37 UTC by Marcin Juszkiewicz
Modified: 2016-03-21 08:29 UTC (History)
4 users (show)

Fixed In Version: qt5-qtwebengine-5.6.0-0.17.beta.fc24
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-03-21 08:29:28 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Marcin Juszkiewicz 2016-02-22 15:37:39 UTC
Description of problem:

qt5-qtwebengine source is 0.2% of whole source. Rest is Chromium source code. 65.2% of which is set of 3rdparty code which involves:

- icu
- mesa
- skia
- ffmpeg (cleaned by qt5-qtwebengine maintainer)
- sqlite
- webrtc
- yasm

And many other software directories which are (or can) be part of Fedora as separate packages.

The problem is that those bundled components are often old and do not contain changes needed for qt5-qtwebengine to build on secondary architectures.

Version-Release number of selected component (if applicable):

5.6.0-0.16.beta

How reproducible:

always

Steps to Reproduce:
1. run on aarch64 (arm-koji scratch is enough)

Actual results:

In file included from /builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/third_party/ffmpeg/libavutil/intreadwrite.h:25:0,
                 from /builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/third_party/ffmpeg/libavcodec/get_bits.h:32,
                 from /builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/third_party/ffmpeg/libavcodec/vp3.c:39:
/builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/third_party/ffmpeg/libavutil/bswap.h:38:30: fatal error: aarch64/bswap.h: No such file or directory
 #   include "aarch64/bswap.h"
                              ^
compilation terminated.


Expected results:

package builds

Additional info:

IMHO missing components (like ffmpeg) should be packaged for Fedora and used as build dependencies.

Comment 1 Kevin Kofler 2016-02-22 23:51:02 UTC
"Package is 99.8% bundled Chromium code which contains another set of 3rd party code" is not a bug according to the current packaging guidelines. And I tried hard to unbundle things. Various components cannot be unbundled for various reasons. The main reason FFmpeg cannot be unbundled is that a fully featured FFmpeg cannot be provided in Fedora. The bundled version is cleaned by a script to only contain known unencumbered parts, which is also where the build failure is coming from. (We would have the same build failure if it were packaged standalone.)

Comment 2 Kevin Kofler 2016-02-23 00:49:21 UTC
Should be fixed in Rawhide (fixed package now building on the primary architectures, but there will be no difference on those), thanks for the 2-line patch to clean_ffmpeg.sh you linked to on IRC.

Comment 3 Marcin Juszkiewicz 2016-02-23 06:31:50 UTC
"should be" is wish thinking. I am in a middle of getting it into buildable state.

Adding those two files to ffmpeg was beginning.

/builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-beta/aarch64-redhat-linux-gnu/src/core/Release/obj/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/vp8/libwebrtc_vp8.a(/builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-beta/aarch64-redhat-linux-gnu/src/core/Release/obj/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/vp8/webrtc_vp8.vp8_impl.o):vp8_impl.cc:function webrtc::VP8EncoderImpl::InitAndSetControlSettings(): error: undefined reference to 'vpx_codec_enc_init_multi_ver'

Comment 4 Kevin Kofler 2016-02-23 13:48:46 UTC
OK. I hope at least the tarball is good now.

Comment 5 Jan Kurik 2016-02-24 15:28:43 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 24 development cycle.
Changing version to '24'.

More information and reason for this action is here:
https://fedoraproject.org/wiki/Fedora_Program_Management/HouseKeeping/Fedora24#Rawhide_Rebase

Comment 6 Peter Robinson 2016-03-16 14:10:31 UTC
So still seeing some issues here on both aarch64 and ppc

PPC: http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=3220219

gyp: Undefined variable platform_heap_asm_files in /builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-rc/src/3rdparty/chromium/third_party/WebKit/Source/platform/blink_platform.gyp
Project ERROR: -- running gyp_qtwebengine failed --
Makefile:116: recipe for target 'sub-gyp_run-pro-make_first' failed

aarch64: http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=3457421

/third_party/libjingle/libjingle_p2p_constants.a /builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-rc/aarch64-redhat-linux-gnu/src/core/Release/obj/src/3rdparty/chromium/third_party/webrtc/modules/libvideo_render.a -Wl,--end-group -lrt -ldl -lgmodule-2.0 -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -levent -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4 -lpthread -licui18n -licuuc -licudata -lprotobuf -lz -lresolv -lfontconfig -lfreetype -lharfbuzz-icu -lharfbuzz -lpng16 -ljpeg -lX11 -lXi -lXcursor -lXext -lXfixes -lXrender -lXss -lpci -lre2 -lXcomposite -lasound -lopus -lm -lvpx -lXdamage -lXtst -lXrandr -lwebp -lwebpdemux -lxml2 -lxslt -lsnappy -lexpat -ldbus-1 -lminizip -lsrtp -L/builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-rc/aarch64-redhat-linux-gnu/src/core/api/Release -Wl,-whole-archive -lqtwebenginecoreapi -Wl,-no-whole-archive -lEGL -lQt5Quick -lQt5Gui -lQt5Qml -lQt5Network -lQt5Core -lGL 
/builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-rc/aarch64-redhat-linux-gnu/src/core/Release/obj/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/vp8/libwebrtc_vp8.a(/builddir/build/BUILD/qtwebengine-opensource-src-5.6.0-rc/aarch64-redhat-linux-gnu/src/core/Release/obj/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/codecs/vp8/webrtc_vp8.vp8_impl.o):vp8_impl.cc:function webrtc::VP8EncoderImpl::InitAndSetControlSettings(): error: undefined reference to 'vpx_codec_enc_init_multi_ver'
Makefile.core_module:154: recipe for target '../../lib/libQt5WebEngineCore.so.5.6.0' failed
collect2: error: ld returned 1 exit status

Comment 7 Marcin Juszkiewicz 2016-03-16 14:16:03 UTC
bug 1311125 is change to libvpx package which is needed to fix this package

Comment 8 Marcin Juszkiewicz 2016-03-21 08:29:28 UTC
http://arm.koji.fedoraproject.org/koji/buildinfo?buildID=362634 got built


Note You need to log in before you can comment on or make changes to this bug.