Thread (17 messages) flat view 17 messages, 6 authors, 2016-06-15

Re: git binary size...

From: Coywolf Qi Hunt <hidden>
Date: 2016-06-15 22:42:16

2006/1/12, Linus Torvalds [off-list ref]:

On Wed, 11 Jan 2006, Andreas Ericsson wrote:
quoted
strip:
      strip $(PROGRAMS)

install: strip
Well, that ends up shaving some more from the binaries, but at a much
bigger cost than just removing "-g".

With stripped binaries, you can't really do _anything_. You get a
core-file, and you're screwed.
Are you sure?

gemini:~> file `which mke2fs`
/sbin/mke2fs: ELF 32-bit LSB executable, Intel 80386, version 1
(SYSV), for GNU/Linux 2.2.0, dynamically linked (uses shared libs),
stripped

gemini:~> file /lib/libext2fs.so.2
/lib/libext2fs.so.2: symbolic link to `libext2fs.so.2.4'

gemini:~> file /lib/libext2fs.so.2.4
/lib/libext2fs.so.2.4: ELF 32-bit LSB shared object, Intel 80386,
version 1 (SYSV), stripped


In gdb:

No symbol table is loaded.  Use the "file" command.
(gdb) bt
#0  0xb7f16445 in ext2fs_mark_generic_bitmap () from /lib/libext2fs.so.2
#1  0xb7f110ed in ext2fs_reserve_super_and_bgd () from /lib/libext2fs.so.2
#2  0xb7f18353 in ext2fs_initialize () from /lib/libext2fs.so.2
#3  0x0804b461 in ?? ()
#4  0xbf84b9ad in ?? ()
#5  0x00000000 in ?? ()

So with stripped binary, I still get the backtrace to locate the buggy
function. IMO, Debian packages are build with -g.

So I suggest to let git go with `-g and striped' like all other packages do.

And if we use gnu autoconf, which provides site config ability, we
could easily get (1) "-g, striped" for distros, (2) "not striped" for
Linus and (3) "-g3, -O0, no striped" for some git developers.

To make git not tight to Linux, but cross platform, consider autoconf.
With non-stripped binaries you can at least see the function the SIGSEGV
happened in, and you usually even get a half-way decent backtrace etc.
False, see above.
                Linus
If I missed something in Debian, correct me.

--
Coywolf Qi Hunt
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help