ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Изменение бинарных файлов после сборки: - strip, ...?
@ 2013-10-22 21:23 Viacheslav Dubrovskyi
  2013-10-22 21:37 ` Dmitry V. Levin
  2013-10-23  9:33 ` Igor Zubkov
  0 siblings, 2 replies; 8+ messages in thread
From: Viacheslav Dubrovskyi @ 2013-10-22 21:23 UTC (permalink / raw)
  To: Devel

[-- Attachment #1: Type: text/plain, Size: 1584 bytes --]

Здравствуйте.

Похоже у нас GO собран не правильно. Проявляется это тем, что не
работает опция -a комманды build. Test case описан тут:
https://bugzilla.altlinux.org/29508

Начал разбираться. Если просто собрать его в ручную через ./make.bash,
то полученный бинарник прекрасно работает. Я сравнил размеры и тот
бинарный файл который в пакете значительно меньше по размеру. И
действительно, файл stripped. В полиси федоры пишут что стрипать нельзя
http://fedoraproject.org/wiki/PackagingDrafts/Go#Debuginfo_and_Stripping_Binaries

Поэтому решил отключил strip в спеке вот так:

%add_verify_elf_skiplist %_libdir/golang/bin/go
%add_verify_elf_skiplist %_libdir/golang/bin/gofmt
%add_verify_elf_skiplist %_libdir/golang/bin/godoc
%global __find_debuginfo_files /bin/true
%brp_strip_none %_libdir/golang/bin/*

Теперь в пакете получился не стрипнутый бинарный файл. Но он все равно
не работает и меньше по размеру чем собранный в ручную.

Вопрос: что еще можно отключить при сборке, чтобы собранный файл совсем
не изменялся машинерией rpm?

-- 
WBR,
Viacheslav Dubrovskyi


[-- Attachment #2: Криптографическая подпись S/MIME --]
[-- Type: application/pkcs7-signature, Size: 3738 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [devel] Изменение бинарных файлов после сборки: - strip, ...?
  2013-10-22 21:23 [devel] Изменение бинарных файлов после сборки: - strip, ...? Viacheslav Dubrovskyi
@ 2013-10-22 21:37 ` Dmitry V. Levin
  2013-10-23  8:03   ` Viacheslav Dubrovskyi
  2013-10-23  9:33 ` Igor Zubkov
  1 sibling, 1 reply; 8+ messages in thread
From: Dmitry V. Levin @ 2013-10-22 21:37 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 492 bytes --]

On Wed, Oct 23, 2013 at 12:23:40AM +0300, Viacheslav Dubrovskyi wrote:
> Поэтому решил отключил strip в спеке вот так:
> 
> %add_verify_elf_skiplist %_libdir/golang/bin/go
> %add_verify_elf_skiplist %_libdir/golang/bin/gofmt
> %add_verify_elf_skiplist %_libdir/golang/bin/godoc
> %global __find_debuginfo_files /bin/true
> %brp_strip_none %_libdir/golang/bin/*

Попробуйте %brp_strip_none *%_libdir/golang/bin/*
и убедитесь, что в спеке strip не запускается вручную.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [devel] Изменение бинарных файлов после сборки: - strip, ...?
  2013-10-22 21:37 ` Dmitry V. Levin
@ 2013-10-23  8:03   ` Viacheslav Dubrovskyi
  2013-10-23  9:46     ` Viacheslav Dubrovskyi
  0 siblings, 1 reply; 8+ messages in thread
From: Viacheslav Dubrovskyi @ 2013-10-23  8:03 UTC (permalink / raw)
  To: devel

23.10.2013 00:37, Dmitry V. Levin wrote:
> On Wed, Oct 23, 2013 at 12:23:40AM +0300, Viacheslav Dubrovskyi wrote:
>> Поэтому решил отключил strip в спеке вот так:
>>
>> %add_verify_elf_skiplist %_libdir/golang/bin/go
>> %add_verify_elf_skiplist %_libdir/golang/bin/gofmt
>> %add_verify_elf_skiplist %_libdir/golang/bin/godoc
>> %global __find_debuginfo_files /bin/true
>> %brp_strip_none %_libdir/golang/bin/*
> Попробуйте %brp_strip_none *%_libdir/golang/bin/*
Нет, не помогло.
Вот размер рабочего файла, который получается после сборки 7884816 go.work
Вот размер файла который попадает в пакет с отключенным стрипом 7868221 go
Вот размер файла который попадает в пакет с включенным стрипом 5693520 
go.org

последние 2 не работают.

Что еще может изменять файлы?

> и убедитесь, что в спеке strip не запускается вручную.
Да, в спеке strip был отключен еще раньше

-- 
WBR,
Viacheslav Dubrovskyi



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [devel] Изменение бинарных файлов после сборки: - strip, ...?
  2013-10-22 21:23 [devel] Изменение бинарных файлов после сборки: - strip, ...? Viacheslav Dubrovskyi
  2013-10-22 21:37 ` Dmitry V. Levin
@ 2013-10-23  9:33 ` Igor Zubkov
  1 sibling, 0 replies; 8+ messages in thread
From: Igor Zubkov @ 2013-10-23  9:33 UTC (permalink / raw)
  To: ALT Linux Team development discussions

2013/10/23 Viacheslav Dubrovskyi <dubrsl@gmail.com>:
> Здравствуйте.
>
> Похоже у нас GO собран не правильно. Проявляется это тем, что не
> работает опция -a комманды build. Test case описан тут:
> https://bugzilla.altlinux.org/29508
>
> Начал разбираться. Если просто собрать его в ручную через ./make.bash,
> то полученный бинарник прекрасно работает. Я сравнил размеры и тот
> бинарный файл который в пакете значительно меньше по размеру. И
> действительно, файл stripped. В полиси федоры пишут что стрипать нельзя
> http://fedoraproject.org/wiki/PackagingDrafts/Go#Debuginfo_and_Stripping_Binaries
>
> Поэтому решил отключил strip в спеке вот так:
>
> %add_verify_elf_skiplist %_libdir/golang/bin/go
> %add_verify_elf_skiplist %_libdir/golang/bin/gofmt
> %add_verify_elf_skiplist %_libdir/golang/bin/godoc
> %global __find_debuginfo_files /bin/true

А конструкция %global в нашем rpm вообще работает? Просто в RH-based
рекомендуют использовать именно её, но не факт что наш rpm её умеет.

> %brp_strip_none %_libdir/golang/bin/*
>
> Теперь в пакете получился не стрипнутый бинарный файл. Но он все равно
> не работает и меньше по размеру чем собранный в ручную.
>
> Вопрос: что еще можно отключить при сборке, чтобы собранный файл совсем
> не изменялся машинерией rpm?

-- 
Igor Zubkov
http://hi.im/ice

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [devel] Изменение бинарных файлов после сборки: - strip, ...?
  2013-10-23  8:03   ` Viacheslav Dubrovskyi
@ 2013-10-23  9:46     ` Viacheslav Dubrovskyi
  2013-10-23 10:08       ` Alexey Gladkov
  0 siblings, 1 reply; 8+ messages in thread
From: Viacheslav Dubrovskyi @ 2013-10-23  9:46 UTC (permalink / raw)
  To: devel

23.10.2013 11:03, Viacheslav Dubrovskyi wrote:
>
> Что еще может изменять файлы?
похоже проблема в другом.

сравнил файлы и они отличаются только в этом:

$ diff go.org.hex go.org2.hex
491764c491764
< 0780f30: 6e74 696d 652d 6764 622e 7079 0000 0000 ntime-gdb.py....
---
 > 0780f30: 6e74 696d 652d 6764 622e 7079 00         ntime-gdb.py.


-- 
WBR,
Viacheslav Dubrovskyi



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [devel] Изменение бинарных файлов после сборки: - strip, ...?
  2013-10-23  9:46     ` Viacheslav Dubrovskyi
@ 2013-10-23 10:08       ` Alexey Gladkov
  2013-10-23 14:55         ` Viacheslav Dubrovskyi
  0 siblings, 1 reply; 8+ messages in thread
From: Alexey Gladkov @ 2013-10-23 10:08 UTC (permalink / raw)
  To: devel

On 23.10.2013 13:46, Viacheslav Dubrovskyi wrote:
> 23.10.2013 11:03, Viacheslav Dubrovskyi wrote:
>>
>> Что еще может изменять файлы?
> похоже проблема в другом.
> 
> сравнил файлы и они отличаются только в этом:
> 
> $ diff go.org.hex go.org2.hex
> 491764c491764
> < 0780f30: 6e74 696d 652d 6764 622e 7079 0000 0000 ntime-gdb.py....
> ---
>  > 0780f30: 6e74 696d 652d 6764 622e 7079 00         ntime-gdb.py.

Если посмотреть как сделано у наших заграничных друзей в
golang-1.1.2-5.fc21.src.rpm то видно, что они отключают вообще почти
всё. Когда я первый релиз для нас делал, то такого ещё не было. Был
только debuginfo.

-- 
Rgrds, legion



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [devel] Изменение бинарных файлов после сборки: - strip, ...?
  2013-10-23 10:08       ` Alexey Gladkov
@ 2013-10-23 14:55         ` Viacheslav Dubrovskyi
  2013-10-23 15:23           ` Alexey Gladkov
  0 siblings, 1 reply; 8+ messages in thread
From: Viacheslav Dubrovskyi @ 2013-10-23 14:55 UTC (permalink / raw)
  To: devel

23.10.2013 13:08, Alexey Gladkov wrote:
> On 23.10.2013 13:46, Viacheslav Dubrovskyi wrote:
>> 23.10.2013 11:03, Viacheslav Dubrovskyi wrote:
>>> Что еще может изменять файлы?
>> похоже проблема в другом.
>>
>> сравнил файлы и они отличаются только в этом:
>>
>> $ diff go.org.hex go.org2.hex
>> 491764c491764
>> < 0780f30: 6e74 696d 652d 6764 622e 7079 0000 0000 ntime-gdb.py....
>> ---
>>   > 0780f30: 6e74 696d 652d 6764 622e 7079 00         ntime-gdb.py.
> Если посмотреть как сделано у наших заграничных друзей в
> golang-1.1.2-5.fc21.src.rpm то видно, что они отключают вообще почти
> всё. Когда я первый релиз для нас делал, то такого ещё не было. Был
> только debuginfo.
Вообщем проблем было несколько. Стрипались бинарники, и пакет был не 
полный. Оказывается ему нужно много из сорцов, и много чего он генерит сам.
Взял спек из федоры и сделал так как они делают и заработало. Не 
претендую на правильность всего, но рабочая версия лежит тут 
http://git.altlinux.org/people/dubrsl/packages/?p=golang.git в бранче 
fedora.
Алексей, если не затруднит, исправьте пожалуйста.

-- 
WBR,
Viacheslav Dubrovskyi



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [devel] Изменение бинарных файлов после сборки: - strip, ...?
  2013-10-23 14:55         ` Viacheslav Dubrovskyi
@ 2013-10-23 15:23           ` Alexey Gladkov
  0 siblings, 0 replies; 8+ messages in thread
From: Alexey Gladkov @ 2013-10-23 15:23 UTC (permalink / raw)
  To: devel

On 23.10.2013 18:55, Viacheslav Dubrovskyi wrote:
> Вообщем проблем было несколько. Стрипались бинарники, и пакет был не 
> полный. Оказывается ему нужно много из сорцов, и много чего он генерит сам.
> Взял спек из федоры и сделал так как они делают и заработало. Не 
> претендую на правильность всего, но рабочая версия лежит тут 
> http://git.altlinux.org/people/dubrsl/packages/?p=golang.git в бранче 
> fedora.
> Алексей, если не затруднит, исправьте пожалуйста.

Разумеется :)

-- 
Rgrds, legion



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2013-10-23 15:23 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-10-22 21:23 [devel] Изменение бинарных файлов после сборки: - strip, ...? Viacheslav Dubrovskyi
2013-10-22 21:37 ` Dmitry V. Levin
2013-10-23  8:03   ` Viacheslav Dubrovskyi
2013-10-23  9:46     ` Viacheslav Dubrovskyi
2013-10-23 10:08       ` Alexey Gladkov
2013-10-23 14:55         ` Viacheslav Dubrovskyi
2013-10-23 15:23           ` Alexey Gladkov
2013-10-23  9:33 ` Igor Zubkov

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git