Почему в объектном файле COFF нет сегмента .bss?

Простая программа Hello World:

#include <stdio.h>

int main(void)
{
printf("Hello, world!\n");
return 0;
}

После DUMPBIN это с / HEADERS флаг, я получаю эти сегменты:

  8 .bss
A0 .debug$S
62 .drectve
F .rdata
8B .text$mn

Если скомпилировать программу с / TC, так что это программа на C, я получаю эти сегменты после того же использования дампа:

2000 .data
1000 .gfids
7000 .rdata
1000 .reloc
10000 .text

Дело в том, что:

Как я могу получить этот похожий вид продукции:

# objdump -hrt hello.o
hello.o:     file format elf32-i386

Sections:
Idx Name          Size     VMA       LMA       File off  Algn
0 .text         00000011 00000000  00000000  00000034  2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
1 .data         00000000 00000000  00000000  00000048  2**2
CONTENTS, ALLOC, LOAD, DATA
2 .bss          00000000 00000000  00000000  00000048  2**2
ALLOC
3 .rodata.str1.1 0000000d  00000000  00000000  00000048 2**0
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .comment      00000033  00000000 00000000  00000055  2**0
CONTENTS, READONLY

SYMBOL TABLE:
00000000 l    df *ABS*  00000000 hello.c
00000000 l    d  .text  00000000
00000000 l    d  .data  00000000
00000000 l    d  .bss   00000000
00000000 l    d  .rodata.str1.1 00000000
00000000 l    d  .comment       00000000
00000000 g    F  .text  00000011 main
00000000         *UND*  00000000 puts

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]