c# “找不到-lc”通过linux终端编译

djp7away  于 2023-01-19  发布在  C#
关注(0)|答案(1)|浏览(188)

我做一个前提:我是Linux世界的“新生儿”,经验非常少,在大学学习了一门课程后,我决定改用这个操作系统,并爱上了它。话虽如此,让我告诉你我的问题...我安装Linux Mint 21.1最初在双启动与一个相当小的分区大小。为了扩展分区,我想从0重新安装它,这样就避免了一些正在出现的问题。由于大学的原因,我发现自己在终端上编程和编译。在第一次安装Linux时,我设法安装了所有必需的东西,并解决了出现的各种问题。在重新安装时,当我试图从终端编译一个文件时,我得到了以下消息:

gcc -c procedure.c
gcc -c semafori.c
gcc -c prodcons_singolo_buffer.c
gcc -o prodcons_singolo_buffer procedure.o semafori.o prodcons_singolo_buffer.o
/usr/bin/ld: impossibile trovare -lc: File o directory non esistente
collect2: error: ld returned 1 exit status
make: *** [Makefile:4: prodcons_singolo_buffer] Errore

具体而言,错误为:

usr/bin/ld: impossibile trovare -lc: File o directory non esistente

不幸的是,我在网上找不到任何关于它的信息。感谢大家的有空和任何回应。

**编辑:**这是生成文件:

all: prodcons_singolo_buffer

prodcons_singolo_buffer: procedure.o semafori.o prodcons_singolo_buffer.o
    gcc -o prodcons_singolo_buffer procedure.o semafori.o prodcons_singolo_buffer.o

prodcons_singolo_buffer.o: prodcons_singolo_buffer.c
    gcc -c prodcons_singolo_buffer.c

procedure.o: procedure.h procedure.c
    gcc -c procedure.c

semafori.o: semafori.c semafori.h
    gcc -c semafori.c

clean:
    rm -rf *.o
    rm -rf prodcons_singolo_buffer
vi4fp9gy

vi4fp9gy1#

我同意您的编译器/库安装是borked。
不相关,但这里是我将如何写你的Makefile(未经测试)。让我知道当你尝试了,我会删除这个答案。

.PHONY: all clean

all: prodcons_singolo_buffer

prodcons_singolo_buffer: procedure.o semafori.o prodcons_singolo_buffer.o

procedure.o:  procedure.c procedure.h

semafori.o: semafori.c semafori.h

clean:
    rm -f prodcons_singolo_buffer *.o

相关问题