gcc로 컴파일 해야되는데 헤더를 못찾는 것 같아요.
Z:\OS\testOS\04.Utility\00.ImageMaker 에 있는 ImageMaker.c 파일을 makefile로 컴파일 해서 ImageMaker.exe 파일을 만들어야 하는데
ImageMaker.c에서 다음과 같은 헤더를 불러올 수 없다네요.
------------------------------------------
#include < stdio.h >
#include < stdlib.h >
#include < fcntl.h >
#include < io.h >
#include < sys/types.h >
#include < sys/stat.h >
#include < errno.h >
------------------------------------------
makefile은 다음과 같습니다.
------------------------------------------
#기본적으로 빌드를 수행할 목록
all: ImageMaker.exe
# ImageMaker 빌드
ImageMaker.exe: ImageMaker.c
gcc -o $@ $<
# 소스 파일을 제외한 나머지 파일 정리
clean:
rm -f ImageMaker.exe
--------------------------------------------
gcc -o $@ $< 여기에 무슨짓을 해줘야 될 것 같은데 어떻게 해야되는건지 모르겠습니다... ㅠㅠ
참고로 그냥 cygwin 터미널을 이용하면
기본 으로는
/home/user 라고 되있는데 이상태로
gcc -o ImageMaker.exe imageMaker.c
하니깐 안되서
ImageMaker.c가 있는 폴더인
cd /OS/testOS/04.Utility/00.ImageMaker 로 간 다음
gcc -o ImageMaker.exe imageMaker.c 하니깐 ImageMaker.exe 파일이 만들어 집니다.
무엇을 찾아봐야하는지라도 알려주시면 좋겠습니다. ㅠㅠ
말씀하신 헤더 파일들은 특별한 컴파일러 플래그 없이도
말씀하신 헤더 파일들은 특별한 컴파일러 플래그 없이도 그냥 사용가능합니다. 뭔가 다른 문제가 있는 것 같은데 일단 에러 메세지를 정확하게 알려주세요.
unresolved inclusion 라고 헤더에 "
unresolved inclusion 라고 헤더에 "!" 되있어서 구글링해보니
#include 명령 다음에 표시되는 "unresolved inclusion" 에러가 난다면, "include paths for headers" 가 설정되지 않았기 때문일 것입니다. “Project” 메뉴 > Properties > C/C++ General > Path and Symbol > “Include” tab으로 가서 다음과 같이 추가해 줍시다.
출처: http://darksilber.tistory.com/entry/이클립스에서-CC-프로그램-작성하기 [안드로이드 / 자바]
이렇게 하라고 하니깐 대부분의 에러가 잡혔고
그래도 O_BINARY 라는 옵션에 빨간줄이 되있어서 검색해보니
#ifndef O_BINARY
#define O_BINARY
#endif
을 추가하라고 해서 했더니 되네요.
근데 해결은 했지만 정확히 무슨 문제인지 모르겠어요.
아래는 같은 증상이신 분의 해결방법인데 "C:\cygwin에 있는 home폴더를 제 계정이 속한 home로 바꿔야 한다는 사실을.. 전 파악했습니다.ㅎㅎㅎ " 라는 말이 무슨말인지 모르겠어요
"cygwin_devenv.zip"는 제가 64비트 멀티코어 OS 원리와 구조 라는 책을 보고있는데 저자님이 부록으로 자기 개발 환경을 올리신거에요.
--------------------------------------------
결국 해결했습니다.
요즘 프린터가 풀링이 걸리고 os가 느려져서 새로 깔 생각이였는데.
이참에 그냥 밀어버렸습니다. 새로새로새로 시작했습니다.
그리고....
아마도 이제는 에러의 원인을 알았습니다...
cygwin_devenv.zip 파일을 그대로 압축을 풀어서 Cygwin 설치 디렉터리에 덮었는 방법으로 구축하시는 것은 어떨까요? ㅠㅠ
이 구절에서 전 그냥 그대로 옮겨 버렸죠..
하지만.... C:\cygwin에 있는 home폴더를 제 계정이 속한 home로 바꿔야 한다는 사실을.. 전 파악했습니다.ㅎㅎㅎ
그래서..
이제는 되는군요.!!!!!
이런 .....(욱한거 아님.ㅎㅎ)
뭐 여튼.. 이참에 대충 지나갈 수 있는 폴더들을 볼 수 있어서 좋았던 것 같습니다
감사합니다.ㅎㅎㅎㅎㅎㅎ
------------------------------------------------------
.
.
댓글 달기