<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>41996</bug_id>
          
          <creation_ts>2022-02-19 08:45:02 +0300</creation_ts>
          <short_desc>section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS</short_desc>
          <delta_ts>2026-09-15 18:56:26 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>rust</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>REOPENED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Vitaly Chikunov">vt</reporter>
          <assigned_to name="Sergey Zhidkih">rx1513</assigned_to>
          <cc>ancieg</cc>
    
    <cc>iv</cc>
    
    <cc>ldv</cc>
    
    <cc>legion</cc>
    
    <cc>rauty</cc>
    
    <cc>rx1513</cc>
    
    <cc>sem</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>207998</commentid>
    <comment_count>0</comment_count>
    <who name="Vitaly Chikunov">vt</who>
    <bug_when>2022-02-19 08:45:02 +0300</bug_when>
    <thetext>verify-elf reports eu-elflint error for rust built binary:

  Verifying ELF objects in /usr/src/tmp/git-delta-buildroot (arch=strict,fhs=strict,lfs=strict,lint=strict,rpath=strict,stack=strict,textrel=strict,unresolved=strict)
  section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
  verify-elf: ERROR: ./usr/bin/delta: eu-elflint failed
  error: Bad exit status from /usr/src/tmp/rpm-tmp.37162 (%install)

ldv had some suggestions, but I forgot what he said.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208003</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2022-02-19 17:04:54 +0300</bug_when>
    <thetext>Потрудитесь описать проблему нормально. Цитата лога сборки таковым описанием не является. Я не буду тратить время и выяснять, что вы имели в виду этой цитатой.

&gt; ldv had some suggestions, but I forgot what he said.

Вот это вообще прекрасно.

Переоткройте багу, когда вспомните и переформулируете.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208004</commentid>
    <comment_count>2</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2022-02-19 17:13:08 +0300</bug_when>
    <thetext>Every binary produced by rust has this problem diagnosed by eu-elfint:

section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208005</commentid>
    <comment_count>3</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2022-02-19 17:15:13 +0300</bug_when>
    <thetext>$ cd beehive/logs/Sisyphus/x86_64/latest/success/ &amp;&amp; grep -F &apos;ALLOC|MERGE|STRINGS&apos; *
alacritty-0.10.0-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
b3sum-1.2.0-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
cbindgen-0.20.0-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
fractal-4.4.1b1-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
git-delta-0.12.0-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
hyperfine-1.12.0-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
maturin-0.11.3-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
rav1e-0.5.0-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
ripgrep-13.0.0-alt2:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
solanum-3.0.1-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
vector-0.18.1-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
vml-0.1.5-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
watchexec-1.17.1-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
waylock-0.3.3-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
xsv-0.13.0-alt1:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
zincati-0.0.22-alt6:section [18] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208006</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2022-02-19 17:20:53 +0300</bug_when>
    <thetext>При сборке утилит вместе с rust я ничего такого не наблюдаю. Так что это не &quot;every binary&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208007</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2022-02-19 17:21:45 +0300</bug_when>
    <thetext>Продолжаю настаивать на нормальном формулировании багрепорта. Наш rpm-build пишет много чего.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208008</commentid>
    <comment_count>6</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2022-02-19 17:22:14 +0300</bug_when>
    <thetext>(In reply to Alexey Gladkov from comment #4)
&gt; При сборке утилит вместе с rust я ничего такого не наблюдаю. Так что это не
&gt; &quot;every binary&quot;.

Every non-stripped binary?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208009</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2022-02-19 17:30:46 +0300</bug_when>
    <thetext>(Ответ для Dmitry V. Levin на комментарий #6)
&gt; (In reply to Alexey Gladkov from comment #4)
&gt; &gt; При сборке утилит вместе с rust я ничего такого не наблюдаю. Так что это не
&gt; &gt; &quot;every binary&quot;.
&gt; 
&gt; Every non-stripped binary?

Вот это и стоит отразить в новом тексте багрепорта. А также стоит упомянуть почему этот &quot;wrong flags&quot; плох и чем грозит. У меня нет никакой информации об этом, а также серьёзность проблемы. Более простой reproducer также был бы полезен.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>208313</commentid>
    <comment_count>8</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2022-03-08 02:13:33 +0300</bug_when>
    <thetext>Прошло достаточно времени, чтобы сформулировать что же не работает.
Переоткройте, когда появится конкретная информация.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289683</commentid>
    <comment_count>9</comment_count>
    <who name="Sergey Zhidkih">rx1513</who>
    <bug_when>2026-06-17 18:56:39 +0300</bug_when>
    <thetext>Это регрессия в компиляторе https://github.com/rust-lang/rust/issues/81028.

Похоже работа над исправлением в апстриме затянулась. Как будет время - попробую исправить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298210</commentid>
    <comment_count>10</comment_count>
    <who name="Anton Zhukharev">ancieg</who>
    <bug_when>2026-09-11 17:55:35 +0300</bug_when>
    <thetext>Если изначальный автор пытался собирать с %set_verify_elf_method strict и столкнулся с проблемой, которая описана в первом комментарии, то хочу предостеречь от радости: на других архитектурах вылезает &quot;букетик&quot; ошибок побольше и исправлением только этой проблемы не обойтись, если хочется воткнуть эти строгие проверки повсеместно.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298348</commentid>
    <comment_count>11</comment_count>
    <who name="Sergey Zhidkih">rx1513</who>
    <bug_when>2026-09-13 17:03:02 +0300</bug_when>
    <thetext>(Ответ для Anton Zhukharev на комментарий #10)
&gt; Если изначальный автор пытался собирать с %set_verify_elf_method strict и
&gt; столкнулся с проблемой, которая описана в первом комментарии, то хочу
&gt; предостеречь от радости: на других архитектурах вылезает &quot;букетик&quot; ошибок
&gt; побольше и исправлением только этой проблемы не обойтись, если хочется
&gt; воткнуть эти строгие проверки повсеместно.
Например?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298942</commentid>
    <comment_count>12</comment_count>
    <who name="Anton Zhukharev">ancieg</who>
    <bug_when>2026-09-15 17:58:08 +0300</bug_when>
    <thetext>(In reply to Sergey Zhidkih from comment #11)
&gt; (Ответ для Anton Zhukharev на комментарий #10)
&gt; &gt; Если изначальный автор пытался собирать с %set_verify_elf_method strict и
&gt; &gt; столкнулся с проблемой, которая описана в первом комментарии, то хочу
&gt; &gt; предостеречь от радости: на других архитектурах вылезает &quot;букетик&quot; ошибок
&gt; &gt; побольше и исправлением только этой проблемы не обойтись, если хочется
&gt; &gt; воткнуть эти строгие проверки повсеместно.
&gt; Например?
Я собрал специально cargo-about с %set_verify_elf_method strict для этого:
https://packages.altlinux.org/en/tasks/423521/

Вот такие проблемы на i586:

[00:01:17] Verifying ELF objects in /usr/src/tmp/cargo-about-buildroot (arch=strict,fhs=strict,lfs=strict,lint=strict,rpath=strict,stack=strict,textrel=strict,unresolved=strict)
[00:01:17] section [16] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none, is ALLOC|MERGE|STRINGS
[00:01:17] verify-elf: ERROR: ./usr/bin/cargo-about: eu-elflint failed
[00:01:17] verify-elf: ERROR: ./usr/bin/cargo-about: uses non-LFS functions: fcntl mmap open

в теории, решается так:

%add_optflags -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64


А вот на aarch64 проблемы, видимо, уже решены со стороны апстрима - я давно пытался собирать со строгими проверками ELF.
Либо они воспроизводятся в определенных условия, о которых я в точности не знаю.

Что же, это радует, осталось дождаться решения https://github.com/rust-lang/rust/issues/81028 и, теоретически, все будет готово к строгим проверкам.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298946</commentid>
    <comment_count>13</comment_count>
    <who name="Anton Zhukharev">ancieg</who>
    <bug_when>2026-09-15 18:14:58 +0300</bug_when>
    <thetext>(In reply to Anton Zhukharev from comment #12)
&gt; (In reply to Sergey Zhidkih from comment #11)
&gt; &gt; (Ответ для Anton Zhukharev на комментарий #10)
&gt; &gt; &gt; Если изначальный автор пытался собирать с %set_verify_elf_method strict и
&gt; &gt; &gt; столкнулся с проблемой, которая описана в первом комментарии, то хочу
&gt; &gt; &gt; предостеречь от радости: на других архитектурах вылезает &quot;букетик&quot; ошибок
&gt; &gt; &gt; побольше и исправлением только этой проблемы не обойтись, если хочется
&gt; &gt; &gt; воткнуть эти строгие проверки повсеместно.
&gt; &gt; Например?
&gt; Я собрал специально cargo-about с %set_verify_elf_method strict для этого:
&gt; https://packages.altlinux.org/en/tasks/423521/
&gt; 
&gt; Вот такие проблемы на i586:
&gt; 
&gt; [00:01:17] Verifying ELF objects in /usr/src/tmp/cargo-about-buildroot
&gt; (arch=strict,fhs=strict,lfs=strict,lint=strict,rpath=strict,stack=strict,
&gt; textrel=strict,unresolved=strict)
&gt; [00:01:17] section [16] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none,
&gt; is ALLOC|MERGE|STRINGS
&gt; [00:01:17] verify-elf: ERROR: ./usr/bin/cargo-about: eu-elflint failed
&gt; [00:01:17] verify-elf: ERROR: ./usr/bin/cargo-about: uses non-LFS functions:
&gt; fcntl mmap open
&gt; 
&gt; в теории, решается так:
&gt; 
&gt; %add_optflags -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
Нет, так легко не обойтись, видимо внутренний вызов компилятором rust  компоновщика из gcc не подхватывает эти флаги. Нужно решать на стороне компилятора rust.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>298952</commentid>
    <comment_count>14</comment_count>
    <who name="Anton Zhukharev">ancieg</who>
    <bug_when>2026-09-15 18:56:26 +0300</bug_when>
    <thetext>(In reply to Anton Zhukharev from comment #13)
&gt; (In reply to Anton Zhukharev from comment #12)
&gt; &gt; (In reply to Sergey Zhidkih from comment #11)
&gt; &gt; &gt; (Ответ для Anton Zhukharev на комментарий #10)
&gt; &gt; &gt; &gt; Если изначальный автор пытался собирать с %set_verify_elf_method strict и
&gt; &gt; &gt; &gt; столкнулся с проблемой, которая описана в первом комментарии, то хочу
&gt; &gt; &gt; &gt; предостеречь от радости: на других архитектурах вылезает &quot;букетик&quot; ошибок
&gt; &gt; &gt; &gt; побольше и исправлением только этой проблемы не обойтись, если хочется
&gt; &gt; &gt; &gt; воткнуть эти строгие проверки повсеместно.
&gt; &gt; &gt; Например?
&gt; &gt; Я собрал специально cargo-about с %set_verify_elf_method strict для этого:
&gt; &gt; https://packages.altlinux.org/en/tasks/423521/
&gt; &gt; 
&gt; &gt; Вот такие проблемы на i586:
&gt; &gt; 
&gt; &gt; [00:01:17] Verifying ELF objects in /usr/src/tmp/cargo-about-buildroot
&gt; &gt; (arch=strict,fhs=strict,lfs=strict,lint=strict,rpath=strict,stack=strict,
&gt; &gt; textrel=strict,unresolved=strict)
&gt; &gt; [00:01:17] section [16] &apos;.debug_gdb_scripts&apos; has wrong flags: expected none,
&gt; &gt; is ALLOC|MERGE|STRINGS
&gt; &gt; [00:01:17] verify-elf: ERROR: ./usr/bin/cargo-about: eu-elflint failed
&gt; &gt; [00:01:17] verify-elf: ERROR: ./usr/bin/cargo-about: uses non-LFS functions:
&gt; &gt; fcntl mmap open
&gt; &gt; 
&gt; &gt; в теории, решается так:
&gt; &gt; 
&gt; &gt; %add_optflags -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
&gt; Нет, так легко не обойтись, видимо внутренний вызов компилятором rust 
&gt; компоновщика из gcc не подхватывает эти флаги. Нужно решать на стороне
&gt; компилятора rust.
Не знаю, на что я надеялся, выставляя %optflags если они потом нигде не экспортируются в окружении при сборке cargo-about...

Но вот я сделал перед вызовом cargo build отдельный экспорт:
export CFLAGS=&apos;-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64&apos;
и это помогло избавиться лишь от &apos;fcntl&apos;, остальные остались.

Да и вообще, тут именно эта проблема исходит из крейта libc - нужно с ним разбираться. А это уже скорее к #60530 относится.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>