c-使用make时没有此类文件或目录错误



我对Linux还比较陌生,但我的操作系统类中有一项任务涉及多个文件。我的教授给了我们他的makefile,但它对我不起作用。Make只返回错误。我知道我有和我的教授相同的所有文件,尽管我的文件还没有完成,但我认为没有理由不编译代码。

这是Makefile:

sync: sync.c prodcons.c prodcons.h producer.c producer.h consumer.c consumer.h Makefile
${CC} -g -Wall -pthread -o  sync ssync.c prodcons.c producer.c consumer.c ln -sf sync assn4

这是我收到的错误信息:

J_studentid@cs3060:~/assn4$ make
cc -g -Wall -pthread -o sync sync.c prodcons.c producer.c consumer.c ln -sf sync assn4
cc: error: ln: No such file or directory
cc: error: sync: No such file or directory
cc: error: assn4: No such file or directory
cc: error: unrecognized command line option ‘-sf’; did you mean ‘-Hf’?
Makefile:2: recipe for target 'sync' failed
make: *** [sync] Error 1
J_studentid@cs3060:~/assn4$

我看到教授在课堂上编译和运行代码,所以我知道它有潜力发挥作用,但它给我带来了问题。我非常乐意提供更多的信息或代码,但我不认为文件的内容与编译错误有关。非常感谢。

我确信这是您的makefile的预期源代码,它既有效又有效:

all:
${CC} -g -Wall -pthread -o  sync ssync.c prodcons.c producer.c consumer.c
ln -sf sync assn4

你的makefile的问题是:

  1. 没有默认目标,即缺少all:
  2. ln -sf sync assn4用作编译器参数

此外,请确保命令行(例如${CC} ...(始终以TAB字符开头。我不知道你的代码块中是否有一些,因为它们在这里被自动更改为空格,但我想指出。

相关内容

  • 没有找到相关文章

最新更新