/usr/lib/gcc/i386-redhat-linux/4.1.2/../../../crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
(可执行文件的情况下)GCC(其实是ld)在链接的时候,会自动找crt1.o文件,
该文件下有一个用汇编语言写成的_start函数,
该函数是程序执行的入口,
在该函数里面, 会有一条汇编指令,
这条汇编指令呼出你所编写的main函数.
你可以objdump命令来查看crt1.o文件进行反汇编编译以后的汇编源文件.
所以,你的main函数是不是没有写,或者没有包括到工程里面去.