Public bug reported: Binaries built with gccgo-4.9 in utopic cannot be stripped at all. Doing so causes the binaries to be un-runnable due to lack of debugging symbols:
$ ./debian/nuntium/usr/bin/nuntium 2014/05/09 19:10:41 Connection error: Unknown address type $ DH_VERBOSE=1 dh_strip -a strip --remove-section=.comment --remove-section=.note debian/nuntium/usr/bin/nuntium strip --remove-section=.comment --remove-section=.note debian/nuntium-decode-cli/usr/bin/nuntium-decode-cli $ ./debian/nuntium/usr/bin/nuntium no debug info in ELF executable errno -1 fatal error: no debug info in ELF executable runtime stack: no debug info in ELF executable errno -1 panic during panic $ This problem does not manifest when building with golang-gc. The problem is also reproducible when calling 'strip --strip-debug'; although this removes substantially fewer symbols, there are still some go-related symbols that are removed according to objdump -x: @@ -871,7 +853,6 @@ 0000000000471380 l O .data 00000000000002f8 C.382 000000000044e520 l O .rodata 0000000000000028 C191 0000000000471680 l O .data 0000000000000028 C.383 -0000000000000000 l df *ABS* 0000000000000000 contenttype.go 00000000004513b0 l O .rodata 0000000000000010 C0 00000000004513c0 l O .rodata 0000000000000010 C1 00000000004513d0 l O .rodata 0000000000000010 C2 But even passing --keep-file-symbols to strip does not give me a working binary. So it looks like gccgo has a hard dependency on the contents of the debugging sections of the binary, which gc does not. ** Affects: gcc-4.9 (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1318027 Title: binaries built with gccgo-4.9 cannot be stripped To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gcc-4.9/+bug/1318027/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs