Как использовать %debug_package при использовании rpmbuild?

Linux версия 2.6.18-131.el5 gcc версия 4.1.2 RPM версия 4.4.2.3

Для сборки пакетов я использую следующую команду: $ sudo rpmbuild -ba xxx.spec

Я думал, что пакет debuginfo должен быть собран по умолчанию, но получить только xxx.src.rpm и xxx.x86_64.rpm без пакета debuginfo.

Затем я добавляю строку в свой xxx.spec, "#%debug_package":

введите здесь описание изображения

Затем создается отладочный пакет! Но я думал, что строка со знаком «#» впереди считается комментарием! Как это работает?

Я совершенно сбит с толку.


person Community    schedule 26.08.2013    source источник
comment
Я решил проблему. Я устанавливаю пакет redhat-rpm-config, а затем по умолчанию получаю пакет debuginfo. Но может ли кто-нибудь сказать мне, как пакет влияет на создание отладочной информации?   -  person    schedule 27.08.2013


Ответы (1)


Это одна из самых раздражающих "фич" в rpm, и люди постоянно ею завладевают. # комментирует только первую строку многострочного макроса. Правильный способ прокомментировать это будет

#%%debug_package

Первый % ускользает от второго; результат после макроса становится тем, что вы хотели.

person Aaron D. Marasco    schedule 26.08.2013
comment
Спасибо за ваш ответ. Но почему пакет debug_package не создается по умолчанию? - person ; 26.08.2013
comment
Вы должны иметь возможность полностью удалить эту строку, так как пакеты debuginfo должны быть собраны автоматически (если нет, вам, вероятно, потребуется установить redhat-rpm-config). Я разместил краткую информацию об этом по адресу отвлеченный-it.blogspot.com/2014/08/ - person Cameron Kerr; 27.08.2014
comment
это также предполагает то же самое с дополнительным объяснением: trac.netlabs.org/rpm/wiki/ - person explorer; 20.09.2020