From 089ce6235c99638ad4542a57af4d09e2be0efc88 Mon Sep 17 00:00:00 2001 From: seyko Date: Fri, 10 Apr 2015 06:49:24 +0300 Subject: [PATCH] output all sections if we produce an executable file tcc w/o -g option generate an executable file which format is not recognized by binutils. It is like stripped one but binutils don't think so. Solution: generate not stripped file which can be correctly stripped by external utils. may be there is a need to handle a -s option and call a sstrip/strip program to do a job. --- tccelf.c | 1 + 1 file changed, 1 insertion(+) diff --git a/tccelf.c b/tccelf.c index 494bc0ab..0adc3dc8 100644 --- a/tccelf.c +++ b/tccelf.c @@ -2020,6 +2020,7 @@ static void alloc_sec_names(TCCState *s1, int file_type, Section *strsec) s->sh_size = s->data_offset; } else if (s1->do_debug || file_type == TCC_OUTPUT_OBJ || + file_type == TCC_OUTPUT_EXE || (s->sh_flags & SHF_ALLOC) || i == (s1->nb_sections - 1)) { /* we output all sections if debug or object file */