Your message dated Wed, 19 Aug 2015 23:03:10 -0300
with message-id <3894446.g9fI52NzRy@luna>
and subject line Re: Bug#796166: qtbase-opensource-src: -reduce-relocations
breaks build when all hardening build flags are enabled
has caused the Debian Bug report #796166,
regarding qtbase-opensource-src: -reduce-relocations breaks build when all
hardening build flags are enabled
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
796166: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796166
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: src:qtbase-opensource-src
Version: 5.4.2+dfsg-8
Severity: normal
Hi,
I discovered that freeciv, particularly the freeciv-qt client, fails to build
from source when I enable all hardening build flags including
-fPIE,-pie (position independent executable). This has never been an
issue before and it seems this regression surfaced with the
introduction of GCC-5.
I think Qt's -reduce-relocation option reduces our ability to harden
our binaries. To workaround this bug I had to change from
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
to
export DEB_BUILD_MAINT_OPTIONS = hardening=+all,-pie
This appears to be not the best solution and Freeciv is not the only affected
package:
https://bugs.debian.org/792592
There are similar bug reports for other distributions:
https://bugs.archlinux.org/task/45283
and there is also a related GCC-5 bug report
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65886
According to the changelog this regression might have been introduced
on 24 July 2015 by Rohan Garg. I'm not sure about the severity but I
would really like to see the old behaviour again.
Regards,
Markus
-- System Information:
Debian Release: stretch/sid
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 4.1.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: unable to detect
--- End Message ---
--- Begin Message ---
On Wednesday 19 August 2015 23:31:12 Markus Koschany wrote:
[snip]
> Hi,
>
> I discovered that freeciv, particularly the freeciv-qt client, fails to
> build from source when I enable all hardening build flags including
> -fPIE,-pie (position independent executable). This has never been an
> issue before and it seems this regression surfaced with the
> introduction of GCC-5.
Right, but sadly it's (arguably) not a Qt bug (see below).
> I think Qt's -reduce-relocation option reduces our ability to harden
> our binaries. To workaround this bug I had to change from
>
> export DEB_BUILD_MAINT_OPTIONS = hardening=+all
>
> to
>
> export DEB_BUILD_MAINT_OPTIONS = hardening=+all,-pie
Actually that should have been -fPIC
> This appears to be not the best solution and Freeciv is not the only
> affected package:
>
> https://bugs.debian.org/792592
Pino: the "right" fix here is passing -fPIC instead of -fPIE
> There are similar bug reports for other distributions:
>
> https://bugs.archlinux.org/task/45283
>
> and there is also a related GCC-5 bug report
>
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65886
>
> According to the changelog this regression might have been introduced
> on 24 July 2015 by Rohan Garg. I'm not sure about the severity but I
> would really like to see the old behaviour again.
Actually this behavior was introduced by me while uploading 5.4.2 to the
archive.
The problem is actually that gcc's upstream do not consider the gcc bug you
noted above as a bug. Thus Qt's upstream developer Thiago Macieira had no
option but to require using -fPIC:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65886#c30
So with my maintainer hat on I consider this not a bug: you need to pass
-fPIC to the applications that build against qt.
If you really think it should be different then please do as suggested in the
Arch linux's bug report: complain to upstream at
https://bugreports.qt.io/browse/QTBUG-45755 or at their mailing list
developm...@qt-project.org. If you get to convince upstream of this believe me
we won't have any problems in changing whatever is necessary.
The real fix here is to make gcc work again with both -fPIC and -Wl,-
Bsymbolic, and, as you say, see the old behavior again.
Kinds regards, Lisandro.
--
Lisandro Damián Nicanor Pérez Meyer
http://perezmeyer.com.ar/
http://perezmeyer.blogspot.com/
signature.asc
Description: This is a digitally signed message part.
--- End Message ---