Gentoo allows pre-definition of C(XX)FLAGS. Now if those CFLAGS contain one or more --param options, qmake filters out the --param of QMAKE_CXXFLAGS *= -fstack-protector-all --param ssp-buffer-size=1 QMAKE_LFLAGS *= -fstack-protector-all --param ssp-buffer-size=1 and tries to give g++ instead "ssp-buffer-size=1" as an option.
Solution: enclose --param ssp-buffer-size=1 in "", like so:
--- bitcoin-qt.pro.old 2012-12-10 15:47:37.000000000 +0100 +++ bitcoin-qt.pro 2013-01-22 15:33:45.000000000 +0100 @@ -33,8 +33,8 @@
!win32 {
for extra security against potential buffer overflows: enable GCCs Stack Smashing Protection
-QMAKE_CXXFLAGS *= -fstack-protector-all --param ssp-buffer-size=1 -QMAKE_LFLAGS *= -fstack-protector-all --param ssp-buffer-size=1 +QMAKE_CXXFLAGS *= -fstack-protector-all "--param ssp-buffer-size=1" +QMAKE_LFLAGS *= -fstack-protector-all "--param ssp-buffer-size=1"
We need to exclude this for Windows cross compile with MinGW 4.2.x, as it will result in a non-working executable!
This can be enabled for Windows, when we switch to MinGW >= 4.4.x.
}