我正在使用忍者第一次建立一个程序。我运行命令' ninja -f hello.c'从cmd但得到错误" ninja:错误:hello.c:1:lexing error"。这是为什么会发生的?这是我的build.ninja文件:
# build.ninja
cc = clang
cflags = -Weverything
rule compile
command = $cc $cflags -c $in -o $out
rule link
command = $cc $in -o $out
build hello.o: compile hello.c
build hello: link hello.o
default hello
这是Hello.c:
#include<stdio.h>
int main()
{
printf("Hello World");
}
答案 0 :(得分:1)
我会说您正在尝试使用.c
文件,您需要build.ninja
作为构建的输入(因此ninja
抱怨您的构建说明的语法文件)。
请参阅-f
选项说明:
usage: ninja [options] [targets...]
...
-f FILE specify input build file [default=build.ninja]
因此,如果要选择要构建的目标,请不要指定-f
。
<强>参考强>