출력 파일을 열 수 없습니다. 테스트: 디렉토리가 Collect2입니까? ld가 종료 상태 1을 반환했습니다.

출력 파일을 열 수 없습니다. 테스트: 디렉토리가 Collect2입니까? ld가 종료 상태 1을 반환했습니다.

다음 명령을 사용하여 프로그램을 컴파일하고 싶습니다. gcc -o test test.c 그러면 다음이 표시됩니다.

yangbin@yangbin-desktop:~/桌면$ gcc -o test test.c
/usr/bin/ld: 출력 파일을 열 수 없습니다. 테스트: 디렉터리입니다.
Collect2: ld가 종료 상태 1개를 반환했습니다.

이유를 이해할 수 없습니다. 문제를 해결할 수 있도록 도와주세요! 저는 신입생입니다.

/*****테스트.c*********/
#포함하다
정수 메인(공허)
{
        정수 입력=0;
        printf("정수를 입력하세요:");
        scanf("%d",&입력);
        printf("입력한 숫자의 두 배는 %d입니다.\n",2*input);
        0을 반환합니다.
}

답변1

컴파일하려는 경로에 "test"라는 디렉터리가 있습니다. 디렉터리 이름을 바꾸거나 출력 파일 이름을 변경하세요(-o Somethingelse). 선택적으로(그리고 가장 좋은 옵션) test.c를 자체 디렉토리로 이동하고 거기에서 컴파일하는 것입니다.

답변2

gcc 명령을 실행한 쉘 프롬프트에서 "cd test"를 시도하십시오. 오류가 없고 test라는 하위 디렉터리에 들어가면 오류 메시지에 표시된 내용이 바로 문제입니다. 이 문제를 해결하려면 "-o" 뒤의 "test"를 다른 이름으로 변경해 보세요.

관련 정보