2017-11-21 24 views
2
gcc -L/root/Desktop - Wall -o prog3.c -pthread -lcopy 
/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.0: In function '_start': (.text+0x20): undefined reference to 'main' 
collect2: error: ld returned 1 exit status 

이것은 내 오류 코드입니다. prog3.c은 찾을 수 없습니다. 지구상에서 일어난 일은 내 파일을 되 찾는 방법입니다. 굵은 글씨는 내가 실행 한 명령이고 나머지는 결과 콘솔 출력입니다.리눅스는 내가 뭘 컴파일하는 동안 내 파일을 무작위로 삭제 했나요?

+0

'-o prog3.c '는 컴파일 결과를'prog3.c'에 넣어야 함을 의미합니다. 그러나 컴파일이 실패하면 출력 파일이 제거됩니다. – Barmar

+0

왜 원본 파일을 출력 파일로 지정 했습니까? – Barmar

+0

백업용입니다. – Barmar

답변

0

문제는 여기에 있습니다 : -o prog3.c. gcc-o optiongcc에 생성 된 실행 파일에 부여해야하는 이름을 알려주는 데 사용됩니다. 여기서는 기본적으로 컴파일러에게 prog3.c 소스 파일을 실행 파일로 대체하도록 요청하고 있습니다. 슬프게도 코드가 사라졌습니다.

+0

우, 그럴 의도가 아니 었어. 오늘 밤에 대학에 입학 할 예정인 프로그램의 일부입니다. 초보자입니다. 내가 더 잘 입력을 시작합니다 –

+0

당신의 일을 위해 죄송합니다. Barmar가 맞습니다. 코드를 백업해야합니다! 귀하의 편집인은 아마도 그것을 처리 할 수 ​​있습니다. Git 또는 SVN과 같은 버전 제어 소프트웨어도 잊지 마십시오. 그것들을 사용하면 코드 버전을 저장하고 엉망인 경우 이전 버전으로 되돌아 갈 수 있습니다. –