当前位置: 技术问答>linux和unix
如何将C写的HELLO WORLD用LINUX下的GCC编译到1K以下
来源: 互联网 发布时间:2016-06-11
本文导语: VC6可以编译到592字节,GCC该如何做才能缩小到1K以下呢 | 汇编容易。要printf("Hello World"),调用库里的,不是自己写的。 楼主怎么不把我在MinGW里的方法给一下? 我在MinGW下是成功的,但我对Linux下的库链...
VC6可以编译到592字节,GCC该如何做才能缩小到1K以下呢
|
汇编容易。要printf("Hello World"),调用库里的,不是自己写的。
楼主怎么不把我在MinGW里的方法给一下?
我在MinGW下是成功的,但我对Linux下的库链接不熟悉,方法如下:
代码:
#include
void _start()
{
printf("Hello World!");
}
编译方法:
gcc -o mini.o -Os -c mini.c
printf链接方法:
ld mini.o --file-alignment=0x1 --section-alignment=0x1 -l:libmsvcrt.a -L D:ycdengqpdev11lib -o mini.exe -s
关键:
--file-alignment=0x1 --section-alignment=0x1
我发现在Linux下没有ld这个东西了?
我发现即使链接了libc.a,也出现其他函数无法链接。
所以:GCC有没有选项,只链接需要的函数,其他不链接?