cygwin에서 gtk 설치를 하라고하는데 에러가 납니다..ㅠ
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -D_REENTRANT -g -O2 -Wall -MT gstrfuncs.lo -MD -MP -MF .deps/gstrfuncs.Tpo -c gstrfuncs.c -DPIC -o .libs/gstrfuncs.o
gstrfuncs.c: In function 'g_strsignal':
gstrfuncs.c:1225:20: error: conflicting types for 'strsignal'
/usr/include/string.h:93:8: note: previous declaration of 'strsignal' was here
Makefile:663: recipe for target `gstrfuncs.lo' failed
make[4]: *** [gstrfuncs.lo] Error 1
make[4]: Leaving directory `/cygdrive/c/glib/glib'
Makefile:726: recipe for target `all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/cygdrive/c/glib/glib'
Makefile:505: recipe for target `all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory `/cygdrive/c/glib/glib'
Makefile:486: recipe for target `all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/cygdrive/c/glib'
Makefile:342: recipe for target `all' failed
make: *** [all] Error 2
configure 까진 되는데 make에서 에러가 납니다..
glib 설치중인데 에러가 뜨네요.. pango나 gtk도 configure는 되는데 make에서 에러가 나네요,..ㅠ
cygwin에서 gtk프로그래밍을 해보고싶은데 설치때문에 미치겟습니다..ㅠ
아마 glib가 cygwin하고 안 맞는 거 같습니다.
1.cygwin에서 제공하는 glib가 있다면 그걸 사용한다.
2.glib 소스를 고친다.
gstrfuncs.c:1225:20: error: conflicting types for 'strsignal'
/usr/include/string.h:93:8: note: previous declaration of 'strsignal' was here
-->
gstrfuncs.c에 있는 strsignal사용한 부분이 cygwin-string,h에 있는 strsignal하고 안 맞는거기때문에 고치면됩니다.
즐린
감사합니당~
어디를 고쳐야할지 잘 모르겠어서 그냥쓰려고하는데..
yang.c:1:22: fatal error: gtk/gtk.h: No such file or directory
compilation terminated.
cygwin 에서 있는 것으로 하려고 했는데 에러가 뜨네요..ㅠ
완전 초보라 환경변수란 것 도 바꾸는것부터 어렵내요 ㅠ
gtk 어떻게 해야할가요 ㅠ
gstrfuncs.c 소스코드를 수정하시는 것이 최우선이겠네요.
hys545님께서 말씀하신 것처럼
제일 좋은 방법은 gstrfuncs.c 소스코드를 수정하시는 것이 제일 좋을 것 같습니다.
strsignal 자료형 선언이 중복되기 때문에 문제가 일어나고 있으니,
gstrfuncs.c 파일 안에서 tydepef strsignal 로 시작하는 부분이 있는지 확인하시고,
없다면, gstrfuncs.c 안의 #include 전처리문 중, string.h를 제외한 나머지 헤더파일에서
strsignal 을 선언하였는지 확인해보시는 것이 좋겠습니다.
보통 cygwin은 레드햇 패키지 정책과 유사한 점이 많아서,
cygwin 배포 저장소 내에 devel 이나 dev 로 이름 붙인 패키지가 따로 있을 것입니다.
gtk 기반의 프로그램을 컴파일 하시길 원하신다면,
gtk 개발과 관련한 패키지 전체를 전부 설치해보시고,
만약 cygwin 패키지 목록 중에서 나타나지 않는다면,
저장소의 위치도 추가하셔서
다른 곳의 패키지를 설치해 보시는 것도 방법입니다.
cygwin과 C 언어에 대해 공부하시기 어려우시리라 생각합니다만,
천천히 공부하시다보면 성공하실거라 생각합니다.
감사합니다.ㅎ
다시깔아서 처음부터 해보려고합니다 ..
도움주셔서 감사해요 모두들~
댓글 달기