Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Gaël PORTAY" <gael.portay@savoirfairelinux.com>
To: buildroot@busybox.net
Subject: [Buildroot] [RFC 0/2] Qt5 bump latest version to 5.10.0
Date: Mon, 19 Feb 2018 17:58:42 -0500	[thread overview]
Message-ID: <20180219225842.sv66vo4covtf4g7g@archlinux> (raw)
In-Reply-To: <20180213152300.w52qim25v3h3h34u@archlinux>

All,

I am now able to build all the Qt modules in 5.10.1.

On Tue, Feb 13, 2018 at 10:23:00AM -0500, Ga?l PORTAY wrote:
> All,
> 
> On Mon, Feb 12, 2018 at 05:20:46PM -0500, Ga?l PORTAY wrote:
> > All,
> > 
> > On Sun, Feb 11, 2018 at 11:13:18AM -0500, Ga?l PORTAY wrote:
> > > But I met a link issue with an 64bit host tool with lpthread. If someone
> > > may help about this issue...
> > > 
> > > 	FAILED: host/transport_security_state_generator 
> > > 	/home/gportay/src/buildroot/output-qt5.10/host/bin/python2 "../../3rdparty/chromium/build/toolchain/gcc_link_wrapper.py" --output="host/transport_security_state_generator" -- /usr/bin/g++ -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--no-as-needed -lpthread -Wl,--as-needed -m64 -Wl,-O1 -Wl,--gc-sections -Wl,-rpath-link=host -Wl,--disable-new-dtags -L/home/gportay/src/buildroot/output-qt5.10/host/x86_64-buildroot-linux-gnu/sysroot/usr/lib -o "host/transport_security_state_generator" -Wl,--start-group @"host/transport_security_state_generator.rsp"  -Wl,--end-group   -ldl -lpthread -lrt -lnss3 -lnssutil3 -lsmime3 -lplds4 -lplc4 -lnspr4 
> > > 	/usr/bin/ld: cannot find /lib64/libpthread.so.0
> > > 	/usr/bin/ld: cannot find /usr/lib64/libpthread_nonshared.a
> > > 	collect2: error: ld returned 1 exit status
> > > 	ninja: build stopped: subcommand failed.
> > > 	Makefile.gn_run:449: recipe for target 'run_ninja' failed
> > > 
> > > The libpthread.so present in host directory is a ld script:
> > > 
> > > 	$ cat host/x86_64-buildroot-linux-gnu/sysroot/usr/lib64/libpthread.so 
> > > 	/* GNU ld script
> > > 	   Use the shared library, but some functions are only in
> > > 	   the static library, so try that secondarily.  */
> > > 	OUTPUT_FORMAT(elf64-x86-64)
> > > 	GROUP ( /lib64/libpthread.so.0 /usr/lib64/libpthread_nonshared.a )
> > > 
> > > When the script is removed, I met another link issue with other
> > > libraries.
> > > 
> > > 	/usr/bin/ld: cannot find /lib64/libm.so.6
> > > 	/usr/bin/ld: cannot find /usr/lib64/libmvec_nonshared.a
> > > 	/usr/bin/ld: cannot find /lib64/libmvec.so.1
> > >
> > 
> > Build is also broken for rpi3...
> > 
> > 	FAILED: host/transport_security_state_generator
> > 	/home/gportay/src/buildroot/output-qt5.10-rpi3/host/bin/python2 "../../3rdparty/chromium/build/toolchain/gcc_link_wrapper.py" --output="host/transport_security_state_generator" -- /usr/bin/g++ -Wl,--fatal-warnings -fPIC -Wl,-z,noexecstack -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--no-as-needed -lpthread -Wl,--as-needed -m64 -Wl,-O1 -Wl,--gc-sections -Wl,-rpath-link=host -Wl,--disable-new-dtags -L/home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib -o "host/transport_security_state_generator" -Wl,--start-group @"host/transport_security_state_generator.rsp"  -Wl,--end-group   -ldl -lpthread -lrt -lnss3 -lnssutil3 -lsmime3 -lplds4 -lplc4 -lnspr4
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libpthread.so when searching for -lpthread
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libpthread.a when searching for -lpthread
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libdl.so when searching for -ldl
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libdl.a when searching for -ldl
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libpthread.so when searching for -lpthread
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libpthread.a when searching for -lpthread
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/librt.so when searching for -lrt
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/librt.a when searching for -lrt
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libnss3.so when searching for -lnss3
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libnssutil3.so when searching for -lnssutil3
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libsmime3.so when searching for -lsmime3
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libplds4.so when searching for -lplds4
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libplc4.so when searching for -lplc4
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libnspr4.so when searching for -lnspr4
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libstdc++.so when searching for -lstdc++
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libstdc++.a when searching for -lstdc++
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libm.so when searching for -lm
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libm.a when searching for -lm
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libc.so when searching for -lc
> > 	/usr/bin/ld: skipping incompatible /home/gportay/src/buildroot/output-qt5.10-rpi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libc.a when searching for -lc
> > 	collect2: error: ld returned 1 exit status
> > 
> > It seems the build-system (ninja?) is trying to link a host tool using
> > arm libraries...
> 
> After investigation, qtwebengine uses the pkg-config wrapper to get
> libs/cflags for both target and host package...
> 
> That is why ninja is trying to link target libraries for an host tool...
> 
> I guess qtwebengine is broken for cross-compile for now :/

I found the issue with qt5webengine.

QtWebEngine/WebEngine uses the same pkg-config (buildroot wrapper) to
get cflags/libs to build host and target binaries. That is why ninja is
mixing target libraries when it builds an host tool.

I added a new wrapper host-pkg-config in the pkgconf package; and told
qtwebengine to use this host-pkg-config wrapper.

I will send the patches for next branch soon.

Regards,
Gael

      parent reply	other threads:[~2018-02-19 22:58 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-11 16:13 [Buildroot] [RFC 0/2] Qt5 bump latest version to 5.10.0 Gaël PORTAY
2018-02-11 16:13 ` [Buildroot] [RFC 1/2] qt5: " Gaël PORTAY
2018-02-12 13:37   ` nimaim
2018-02-25 17:06     ` [Buildroot] Drop support for Qt 5.6? [was: [RFC 1/2] qt5: bump latest version to 5.10.0] Arnout Vandecappelle
2018-02-25 17:17       ` Baruch Siach
2018-02-25 17:26       ` Yann E. MORIN
2018-02-25 17:42         ` Nimai Mahajan
2018-02-25 17:52           ` Yann E. MORIN
2018-02-25 18:10             ` Nimai Mahajan
2018-02-25 18:28               ` Yann E. MORIN
2018-02-25 18:29                 ` Nimai Mahajan
2018-02-26  8:22                 ` Peter Korsgaard
2018-02-26 11:50                   ` Nimai Mahajan
2018-02-26 12:14                     ` Peter Korsgaard
2018-02-26 12:17                       ` Nimai Mahajan
2018-02-26 20:45                         ` Nimai Mahajan
2018-02-26  8:18       ` Peter Korsgaard
2018-02-12 21:07   ` [Buildroot] [RFC 1/2] qt5: bump latest version to 5.10.0 Gaël PORTAY
2018-02-11 16:13 ` [Buildroot] [RFC 2/2] qt5webengine: select libnss Gaël PORTAY
2018-02-12 21:19   ` Gaël PORTAY
2018-02-11 22:11 ` [Buildroot] [RFC 0/2] Qt5 bump latest version to 5.10.0 Julien CORJON
2018-02-12 18:20   ` Gaël PORTAY
2018-02-12 22:20 ` Gaël PORTAY
2018-02-13 15:23   ` Gaël PORTAY
2018-02-13 16:35     ` Gaël PORTAY
2018-02-19 22:58     ` Gaël PORTAY [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180219225842.sv66vo4covtf4g7g@archlinux \
    --to=gael.portay@savoirfairelinux.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox