vim과 vi에서 ac 프로젝트를 컴파일하고 실행하려고 합니다.
#include<stdio.h>
int main(void)
{
printf("Hello! This is a test prgoram.\n");
return 0;
}
나는이 출력을 얻습니다
madona@madona-Java ~ $ vi demo.c
[No write since last change]
make: *** No targets specified and no makefile found. Stop.
Press ENTER or type command to continue
[No write since last change]
gcc: error: demo.c: No such file or directory
gcc: fatal error: no input files
compilation terminated.
shell returned 4
이것을 사용한 후 :!gcc demo.c
. 내가 뭘 잘못했나요?
다음을 실행하려고 할 때도 이 문제가 발생했습니다.
gcc -o demo demo.c
gcc: error: demo.c: No such file or directory
gcc: fatal error: no input files
compilation terminated.
답변1
단지 네가 도망쳤다는 이유만으로
vi demo.c
demo.c
파일이 생성되었다는 의미는 아닙니다 . 버퍼는 디스크에 처음 쓸 때까지 생성되지 않습니다.
컴파일하기 전에 버퍼를 디스크에 쓰십시오.
:w
당신이 본 메시지는 이것을 확인합니다 [No write since last change]
. 이 메시지는 버퍼가 변경되었지만(이라는 버퍼를 생성했기 때문에 demo.c
) 수정 사항이 디스크에 기록되지 않았음을 의미합니다.