C언어 LNK 2005 main obj 오류는 소스파일의 다른 main()
함수가 있는 파일을 삭제하거나 지우면 해결 됩니다.
C언어 비주얼 스튜디오 LNK2005 오류
Hello World! 를 인쇄하는 아주 간단한 코드인데 실행을 해보면 LNK 2005, LNK 1169 오류가 발생합니다.
- 오류 코드 LNK 2005 _main이(가) 시작.obj에 이미 정의되어 있습니다.
- 오류 코드 LNK 1169 여러 번 정의된 기호가 있습니다.
그 이유는 같은 프로젝트에 main()
함수가 두 번 이상 사용되었기 때문입니다.
보통 프로젝트를 새로 생성하면, 프로젝트 명과 동일한 소스파일이 똑같이 자동 생성됩니다.
아래 그림을 보면 솔루션 탐색기에서 첫 번째 프로젝트라는 항목의 하위에 소스 파일을 클릭해봅니다. 그러면 프로젝트 명과 동일한 첫 번째 프로젝트.cpp 라는 파일이 자동 생성되어있는 것을 볼 수 있습니다.
이 소스파일 내부에 main()
함수가 이미 작성되어 있습니다.
해결 방법은 이 소스 파일을 삭제하거나 내부 내용을 모두 지우면 됩니다.
하나의 소스 파일에 여러 C언어 파일이 있는 것은 상관이 없습니다.
단 그림처럼 main()
함수가 적힌 파일은 단 하나만 존재해야 합니다. 그래야 코드가 실행됩니다.