[英]C - makefile error undefined reference to main
dealer: dealer.o readline.o car.o
gcc -o dealer readline.o car.o
dealer.o: dealer.c car.h readline.h
gcc -c dealer.c
readline.o: readline.c car.h readline.h
gcc -c readline.c
car.o: car.c car.h readline.h
gcc -c car.c
make dealer
gcc -c dealer.c
gcc -c readline.c
gcc -c car.c
gcc -o dealer readline.o car.o
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [dealer] Error 1
I keep getting the error above. 我一直收到上面的错误。 My dealer.c does indeed contain 'main'.
我的dealer.c确实包含'main'。
Does anybody have an idea on whats going on? 有没有人知道最新情况?
your link line: 你的链接线:
gcc -o dealer readline.o car.o
doesn't contain dealer.o
, which explains why main
is missing. 不包含
dealer.o
,这解释了为什么main
缺失。 Should be: 应该:
gcc -o dealer dealer.o readline.o car.o
(there's no automatic/guessed relation between the name of the final executable indicated by -o dealer
and the object file dealer.o
) (
-o dealer
指示的最终可执行文件的名称与目标文件dealer.o
之间没有自动/猜测的关系)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.