From: Peter Seiderer <ps.report@gmx.net>
To: buildroot@busybox.net
Subject: [Buildroot] [autobuild.buildroot.net] Build results for 2019-07-20
Date: Tue, 23 Jul 2019 21:36:46 +0200 [thread overview]
Message-ID: <20190723213646.326c6fd9@gmx.net> (raw)
In-Reply-To: <9d0c9348-7ca4-bca5-3c89-17c1b1358069@andin.de>
Hello Andreas,
On Tue, 23 Jul 2019 15:14:50 +0200, Andreas Naumann <dev@andin.de> wrote:
> Hi Peter,
>
> Am 22.07.19 um 20:21 schrieb Peter Seiderer:
> > Hello Andreas,
> >
> > On Mon, 22 Jul 2019 16:09:59 +0200, Andreas Naumann <dev@andin.de> wrote:
> >
> >> Hello Peter, all,
> >>
> >>
> >> Am 21.07.19 um 21:01 schrieb Peter Seiderer:
> >>> Hello *,
> >>>
> >>> On Sun, 21 Jul 2019 06:00:34 -0000, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote:
> >>>
> >>>> Hello,
> >>>>
> >>>> Build statistics for 2019-07-20
> >>>
> >>> [...]
> >>>
> >>>> sparc64 | libv4l-1.16.5 | NOK | http://autobuild.buildroot.net/results/79c1e1b7a1bc53c1e9b2ae0c9acb443e6d2e2994 |
> >>>
> >>> make[4]: Entering directory '/home/buildroot/build/instance-1/output/build/libv4l-1.16.5/utils/qv4l2'
> >>>
> >>> [...]
> >>>
> >>> CXXLD qv4l2
> >>> libtool: warning: library '/home/buildroot/build/instance-1/output/host/bin/../sparc64-buildroot-linux-gnu/sysroot/usr/lib/libQt5Widgets.la' was moved.
> >>> libtool: error: cannot find the library '' or unhandled argument '/libQt5Gui.so'
> >>> Makefile:571: recipe for target 'qv4l2' failed
> >>>
> >>>
> >>> >From host/sparc64-buildroot-linux-gnu/sysroot/usr/lib/libQt5Widgets.la:
> >>>
> >>> # Libraries that this one depends upon.
> >>> dependency_libs='-latomic /libQt5Gui.so /libQt5Core.so -lpthread -lrt -lpthread -ldl '
> >>
> >>
> >> I have rebuilt the sparc config that led to this failure as well as an
> >> arm config (imx6-sabresd_qt5) and can confirm that both now (Qt 5.12.4)
> >> create lines like
> >> dependency_libs='-latomic <pkg-build-dir>/lib/libQt5Core.so -lpthread
> >> -lrt -lpthread -ldl '
> >>
> >> instead of (Qt 5.11.3)
> >> dependency_libs='-L<pkd-build-dir>/lib -lQt5Core -lrt -ldl -latomic
> >> -lpthread '
> >>
> >> Right now I dont have the time to find out why and what exactly has
> >> changed in Qt (or elsewhere) to cause that.
> >>
> >>>
> >>> This can be fixed by reverting 'qt5: Remove *.la/*.prl fixup script' ([1]), and adding
> >>>
> >>> -e "s:\/lib\([a-zA-Z0-9_-]*\)\.so:-l\1:g"
> >>>
> >>> to the sed statement, resulting in the following dependency_libs line:
> >>>
> >>> # Libraries that this one depends upon.
> >>> dependency_libs='-latomic -lQt5Gui -lQt5Core -lpthread -lrt -lpthread -ldl '
> >>
> >> Obviously the la fixup code in pkg-generic.mk is no longer able to
> >> handle the occurence of so-files with full path correctly. However, I
> >> wonder if pkg-generic would be an acceptable place to fix the issue.?
> >
> > Can confirm that the following (quick hack) fixes the problem too:
> >
> > --- a/package/pkg-generic.mk
> > +++ b/package/pkg-generic.mk
> > @@ -305,6 +305,7 @@ $(BUILD_DIR)/%/.stamp_staging_installed:
> > -e "s:@TOOLCHAIN_EXTERNAL_INSTALL_DIR@:$(TOOLCHAIN_EXTERNAL_INSTALL_DIR):g") \
> > -e "s:@STAGING_DIR@:$(STAGING_DIR):g" \
> > -e "s:@BASE_DIR@:$(BASE_DIR):g" \
> > + -e "s:\/lib\([a-zA-Z0-9_-]*\)\.so:-l\1:g" \
> > "$${la}.fixed" && \
> > if cmp -s "$${la}" "$${la}.fixed"; then \
> > rm -f "$${la}.fixed"; \
>
> Somebody reported a similar issue (and workaround) in the QT bugracker:
> https://bugreports.qt.io/browse/QTBUG-76625
> Theres also a fix for it, however it has no effect on the appearance of
> so-file. As I understand it they rather fix the path to it.
>
> The real reason behind our problem seems to be:
>
> commit 5b3dfa470ed7ea40103daa785286ab71fb7aa230
> Author: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
> Date: Wed Dec 19 12:46:52 2018 +0100
>
> qmake: link qt libraries by full path
>
> this avoids the scenario where the linker would pick up the wrong qt
> libraries for LIBS_PRIVATE because LIBS added the "wrong" path first.
> this is also consistent with configure-supplied dependencies as of
> recently.
>
> as a side effect, this also removes pretenses of lsb linker
> handling, as
> it makes no sense after the change and is certainly obsolete anyway.
>
> Fixes: QTBUG-50921
>
> I made a comment in 76625. If I understand the issue correctly, then
> qmake needs to add '-l' in front of the absolute so-files. We in turn
> would need to not remove the build-dir when occuring in an so-file, but
> replace it with the staging dir. Otherwise we might hit the same issue
> that 5b3dfa4 was trying to fix, right?
Thanks for investigation and the hints...., with the following patch
--- qt5base-5.12.4/mkspecs/features/qt.prf-001 2019-07-23 20:57:39.668312458 +0200
+++ qt5base-5.12.4/mkspecs/features/qt.prf 2019-07-23 20:58:44.289581880 +0200
@@ -217,7 +217,7 @@
lib = $$MODULE_LIBS/$$QMAKE_PREFIX_STATICLIB$${lib}.$$QMAKE_EXTENSION_STATICLIB
PRE_TARGETDEPS += $$lib
} else {
- lib = $$MODULE_LIBS/$$QMAKE_PREFIX_SHLIB$${lib}.$$QMAKE_EXTENSION_SHLIB
+ lib = -L$$MODULE_LIBS -l$${lib}
}
LIBS$$var_sfx += $$lib
}
I get the following entry in build/qt5base-5.12.4/lib/libQt5Widgets.la:
dependency_libs='-L/home/seiderer/Work/Buildroot/build_sparc_qt_libv4l_001/build/qt5base-5.12.4/lib -lQt5Gui -lQt5Core -latomic -lrt -ldl -lpthread -lrt -lpthread -ldl '
And in host/sparc64-buildroot-linux-gnu/sysroot/usr/lib/libQt5Widgets.la:
dependency_libs=' -lQt5Gui -lQt5Core -latomic -lrt -ldl -lpthread -lrt -lpthread -ldl '
And the build of libv4l/utils/qv4l2 succeeds...
Regards,
Peter
>
> regards,
> Andreas
>
> >
> > Regards,
> > Peter
> >
> >>
> >>
> >> regards,
> >> Andreas
> >>
> >>
> >>>
> >>> Regards,
> >>> Peter
> >>>
> >>> [1] https://git.buildroot.net/buildroot/commit/?id=428e5276e4df0b4bbd75df38565298ad53ea4f8b
> >>> _______________________________________________
> >>> buildroot mailing list
> >>> buildroot at busybox.net
> >>> http://lists.busybox.net/mailman/listinfo/buildroot
> >>>
> >
next prev parent reply other threads:[~2019-07-23 19:36 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-21 6:00 [Buildroot] [autobuild.buildroot.net] Build results for 2019-07-20 Thomas Petazzoni
2019-07-21 19:01 ` Peter Seiderer
2019-07-22 14:09 ` Andreas Naumann
2019-07-22 18:21 ` Peter Seiderer
2019-07-23 13:14 ` Andreas Naumann
2019-07-23 19:36 ` Peter Seiderer [this message]
2019-07-24 8:09 ` Andreas Naumann
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=20190723213646.326c6fd9@gmx.net \
--to=ps.report@gmx.net \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.