c의 문법상 파일의 끝에는 반드시 개행문자가 하나 붙어줘야함. 근데 윈도우에서 개발하면이 개발툴들이 자동으로끝 라인을 날려먹어버림.
그래서리 이 코드를 gcc로 컴파일하려면 요딴워닝이 뜸.
Visual Studio나 Xcode같은 경우 특정 warning을 없애버리는 기능을 통해 안보이게 할 수 있는데 gcc에서는 불가능 함.
구글뒤져보면 C문법이 그런거니까 당연한 거다. 모든 파일끝에 엔터 한방씩 먹여라! 라는 답변만 수두룩함.
문제는 윈도우 쪽 에디터에서 작업하면 도루묵이 되는 경우가 많다는 거...
다행히 용자 하나가 나타나 gcc를 패치해서 막아버리도록 하긴 했는데... 이게 패치하려면 소스 있어야 하고 다시 컴팔하고 해야하니 무쟈게 귀찮고 오히려 엔터먹이는것보다 시간을더 먹을수도 있음.
결론: 참고 살던가 모든 파일끝에한줄 넣던가... 그냥 코드하나 짜서 모든 소스파일 끝에 개행넣어주는 프로그램 짜던가...
암튼 gcc 옵션에는 그런 기능 엄뜸.
References
- http://crossgcc.rts-software.org/doku.php?id=mingwformac
- http://www.tomatowax.com/ZeroboardXE/Home_HamRadio_Programming/5051
- http://stackoverflow.com/questions/282851/what-flag-silences-gccs-warning-about-no-new-line-at-file-endings
댓글 없음:
댓글 쓰기