gcc 编译小得

昨天至今天一直苦恼一个事情,为什么编译通不过。我下面有这些文件:

hai@hai-virtual-machine:~/gongcheng/gongcheng$ ls
b.c client client.c fifo fifo.c fun.c fun.h Makefile server server.c

后面gcc编译时候一直出现这个:

hai@hai-virtual-machine:~/gongcheng/gongcheng$ sudo gcc -o fifo fifo.c
[sudo] password for hai:
/usr/bin/ld: cannot open output file fifo: Is a directory
collect2: ld 返回 1

一直找啊。

然后我把我需要编译的 fifo.c 和fun.h把它移到  fifo文件夹里面,编译才通过

而后我想啊,是怎么回事?

才发现,我编译的时候写的是 sudo  gcc -o fifo  fifo.c

fifo生成目标文件与fifo文件夹同名,所以编译不过。

耗费我这么长时间,终于通过了。

保留所得。

原文地址:https://www.cnblogs.com/hcu5555/p/2659803.html