[Qtwebengine] QtWebengine cross-compilation host compiler packages

Michal Klocek michal.klocek at qt.io
Mon May 4 12:00:19 CEST 2020


This error log does not show what exactly are you compiling, moreover error message is for your cross compiler and not for system one, meaning installing anything for system one might have no effect (depending how cross cross compilation toolchain was done) .

 If 32-bit compilation does not work, v8 snapshot support should be automatically disabled by one of configure test.
Please open bug report and attach full build log.

I am sorry I mistyped feature parameter (there is no extra 'no') -no-feature-webengine-v8-snapshot-support  , so it should be also in 5.12.8, it disables v8 snapshots, which will result in extra startup time when initialization of javascript programs.



From: Ramakanth Kesireddy <rama.kesi at gmail.com>
Sent: Monday, May 4, 2020 11:33 AM
To: Michal Klocek <michal.klocek at qt.io>
Cc: qtwebengine at lists.qt-project.org <qtwebengine at lists.qt-project.org>
Subject: Re: [Qtwebengine] QtWebengine cross-compilation host compiler packages


Below is the error thrown while building Qt 5.12.8 sources:

  /home/target/ti-processor-sdk-linux-rt-am335x-evm- cannot find crti.o: No such file or directory
collect2: error: ld returned 1 exit status
Makefile.core_module:84: recipe for target '../../lib/libQt5WebEngineCore.so.5.12.8' failed
make[4]: *** [../../lib/libQt5WebEngineCore.so.5.12.8] Error 1
make[4]: Leaving directory '/home/target/qt-everywhere-src-5.12.8/qtwebengine/src/core'
Makefile:124: recipe for target 'sub-core_module-pro-make_first' failed
make[3]: *** [sub-core_module-pro-make_first] Error 2
make[3]: Leaving directory '/home/target/qt-everywhere-src-5.12.8/qtwebengine/src/core'
Makefile:79: recipe for target 'sub-core-make_first' failed
make[2]: *** [sub-core-make_first] Error 2
make[2]: Leaving directory '/home/target/qt-everywhere-src-5.12.8/qtwebengine/src'
Makefile:48: recipe for target 'sub-src-make_first' failed
make[1]: *** [sub-src-make_first] Error 2
make[1]: Leaving directory '/home/target/qt-everywhere-src-5.12.8/qtwebengine'
Makefile:153: recipe for target 'module-qtwebengine-make_first' failed
make: *** [module-qtwebengine-make_first] Error 2

The cross compiled crt1.o is found in /home/target/ti-processor-sdk-linux-rt-am335x-evm-

Host 32 bit binaries for the missing crt1.0 are found like below:
target at ubuntu:~/qt-everywhere-src-5.12.8$ find /usr/ -name crti*

 Can we disable build of v8 snapshot with -no-feature-nowebengine-v8-snapshot-support in Qt 5.12.8 sources and not possible in Qt 5.15 sources?
So v8 snapshot doesnot requires host 32 bit binaries to cross-compile for the target device?

Also is it mandatory to have opengl es2 configured for Qt to make use of QtWebEngine widgets in rendering hmtl content since there is no hardware accelerated rendering for the device?

Best Regards,

On Mon, 4 May, 2020, 14:47 Michal Klocek, <michal.klocek at qt.io<mailto:michal.klocek at qt.io>> wrote:

I do not think we check for any specific libs for 32-bit compiler when building v8 snapshot during 64bit cross build, therefore we do not have a list or required libs. Please open bug report and specify qt version and compile error.

Please note you can always disable build of v8 snapshot with -no-feature-nowebengine-v8-snapshot-support


From: QtWebEngine <qtwebengine-bounces at lists.qt-project.org<mailto:qtwebengine-bounces at lists.qt-project.org>> on behalf of Ramakanth Kesireddy <rama.kesi at gmail.com<mailto:rama.kesi at gmail.com>>
Sent: Monday, May 4, 2020 10:44 AM
To: qtwebengine at lists.qt-project.org<mailto:qtwebengine at lists.qt-project.org> <qtwebengine at lists.qt-project.org<mailto:qtwebengine at lists.qt-project.org>>
Subject: [Qtwebengine] QtWebengine cross-compilation host compiler packages


In the https://wiki.qt.io/QtWebEngine/How_to_Try, it mentions  in case you have the 64-bit Linux host, you need to install an adidtional 32-bit multilib packages (at least: linux-libc-dev:i386, linux-headers-xxx:i386).

Am trying to cross-compile QtWebengine on 64 bit Ubuntu 16.04 host. Though I installed multi lib package and the above mentioned packages, it seems like I didnot install the necessary files to compile 32 bit for cross-compilation as it needs the host compiler that matches the target for building the v8 snapshot and it throws errors while cross-compilation.

Here is the configure line:

/configure -v -opensource -confirm-license -make libs -release -shared -sysroot /home/target/ti-processor-sdk-linux-rt-am335x-evm- -no-gcc-sysroot -device arm-linux-gnueabihf-g++ -device-option CROSS_COMPILE=/home/target/ti-processor-sdk-linux-rt-am335x-evm- -reduce-exports -optimize-size -no-gtk -force-pkg-config -no-use-gold-linker -qt-libjpeg -qt-zlib -qt-libpng -sql-sqlite -no-xcb -no-cups -no-opengl -no-qml-debug -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcanvas3d -skip qtcharts -skip qtconnectivity -skip qtdatavis3d -skip qtdoc -skip qtgamepad -skip qtgraphicaleffects -skip qtimageformats -skip qtnetworkauth -skip qtlocation -skip qtmacextras -skip qtpurchasing -skip qtmultimedia -skip qtquickcontrols -skip qtquickcontrols2 -skip qtremoteobjects -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qttools -skip qtwayland -skip qtwebsockets -skip qtwebview -skip qtwebchannel -skip qtwinextras -skip qtandroidextras -skip qtx11extras -skip qtxmlpatterns -nomake tools -nomake tests -nomake examples -no-compile-examples -no-iconv -dbus -fontconfig -system-freetype -ssl -qt-pcre -no-pch -recheck-all -DQT_ARCH_ARM

Could you please let me know the packages to be installed for preparing the 32 bit Ubuntu host compiler or anything am missing though sysroot is set?

Best Regards,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/qtwebengine/attachments/20200504/f5bea381/attachment.html>

More information about the QtWebEngine mailing list