gcc로 컴파일 해야되는데 헤더를 못찾는 것 같아요.

JJneo의 이미지

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 파일이 만들어 집니다.

무엇을 찾아봐야하는지라도 알려주시면 좋겠습니다. ㅠㅠ

익명 사용자의 이미지

말씀하신 헤더 파일들은 특별한 컴파일러 플래그 없이도 그냥 사용가능합니다. 뭔가 다른 문제가 있는 것 같은데 일단 에러 메세지를 정확하게 알려주세요.

JJneo의 이미지

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로 바꿔야 한다는 사실을.. 전 파악했습니다.ㅎㅎㅎ

그래서..

이제는 되는군요.!!!!!

이런 .....(욱한거 아님.ㅎㅎ)

뭐 여튼.. 이참에 대충 지나갈 수 있는 폴더들을 볼 수 있어서 좋았던 것 같습니다

감사합니다.ㅎㅎㅎㅎㅎㅎ
------------------------------------------------------

JJneo의 이미지

.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.