[devel] неиспользование %optflags во время линковки

Dmitry V. Levin ldv на altlinux.org
Ср Дек 15 17:23:57 MSK 2021


On Thu, Dec 09, 2021 at 02:24:31AM +0300, Dmitry V. Levin wrote:
> On Wed, Dec 08, 2021 at 01:55:26PM +0300, Dmitry V. Levin wrote:
[...]
> > Обычно так бывает, когда что-то одно было скомпилировано с -mthumb,
> > что-то другое - без -mthumb, а потом слинковано вместе.
> > 
> > При этом -flto имеет свойство делать важным указание %optflags в тех
> > местах, где раньше это было необязательно, ...
> > 
> > > Этим "кто-то" мог оказаться и компилятор, так уже бывало много раз, например
> > > 
> > > https://bugreports.qt.io/browse/QTBUG-69808?focusedCommentId=416504&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-416504
> > 
> > ... например, как было в этом случае.
> 
> Так оно оказалось и в случае этого многострадального qt3,
> фикс выглядит примерно так:
> 
> 	project->variables()["QMAKE_LFLAGS"] += project->variables()["QMAKE_CXXFLAGS"];

Аналогичная ошибка в boost: во время линковки не используется %optflags.

$ grep -Fce -flto=auto /beehive/logs/Sisyphus/x86_64/latest/success/boost-1\:1.77.0-alt2 
875
$ grep -Fc ' -shared ' beehive/logs/Sisyphus/x86_64/latest/success/boost-1\:1.77.0-alt2
43
$ grep -F ' -shared ' beehive/logs/Sisyphus/x86_64/latest/success/boost-1\:1.77.0-alt2 \
 |grep -Fce -flto=auto
0


-- 
ldv


Подробная информация о списке рассылки Devel