티스토리 뷰
다음 주는 휴가!
그래서 휴가기간동안 뭘해야 보람찰까 고민해봤지만... 내가 뭐 딱히 할 일이 있을리 만무하다.
그래서 생각한 것이 LiteAmp의 win32포트를 만들어 보는 거였는데... 어차피 일주일만에 할 수 있는 일은 아니겠지만...
일단 삽질 시작!
그런데, 이건 뭔가 다운 받을것도 많고 전혀 윈도스럽지 않은 삽질이 필요한것 같아 보인다...
그래서 구글님께 gtk+ visual c++를 찾아달라고 부탁드렸더니:
?GladeWin32가 있는 것은 알고 있었지만... 헛! 정말 등잔 밑이 어두웠다.
여기에 GTK+ Win32 All-In-One Installer가 있을 줄이야!
바로 받아서 설치하니 기존에 GIMP때문에 깔려있던 GTK에 덮어서 깔아버린다.
그래서 혹시나 하고 두개의 GTK 런타임을 다 언인스톨하고 All-In-One만 다시 깔았다. 그리고 혹시나 하는 마음에GIMP를 실행시키니 잘 돌아간다!
그렇다! 바로 내가 원하는 환경이다! GTK 런타임만 있으면 모든 GTK 어플리케이션들이 다 그 런타임을 쓰는 것이다! Linux처럼! 자바처럼! 파이썬처럼! 모노처럼!
바로 MSVC를 띄우고 gtkhello 프로젝트를 만들었다. 아무 생각없이 Win32 Application 프로젝트로...
링크 에러가 몇 개 난다. 이 정도 쯤이야! 바로 gtk-win32-2.0.lib과 gobject-2.0.lib을 추가시켜 주었다.
흠.. 링크 에러가 또 난다. ?WinMain을 찾을 수 없단다.... 그렇다... ?WinMain인것이다. ㅂㅌ MSVC의 엔트리포인트...
씨익~ 비웃어 준다음 프로젝트를 새로 만들었다. :-D (아직도 VC를 기억하고 있는 스스로를 자랑스러워하면서) gtkhello2... 이번엔 Win32 Console Application 프로젝트로...
링크 OK! 실행도 잘된다! 한 방에!! 오오! 그런데 터미널 창은 뭐야?
뭔가 난관인듯하다... 다시 gtkhello프로젝트를 열었다. 그리고 main의 이름을 ?WinMain으로 그대로 바꿔주었다.
역시 링크 에러... __stdcall 이어야 한다는군... 기억이 난다... WINAPI다.
그리고 보니 함수 인자가 완전히 다르다. 이를 어쩐다. ?mithrandir님의 조언으로 엔트리포인트를 main으로 바꿔주었다.
gmem.c: 140: failed to allocate 4294...
LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain@16 Debug/gtkhello.exe : fatal error LNK1120: 1 unresolved externals
어벙벙한 에러를 뿜어낸다. :'( (VC를 쓴지 너무 오래된 탓이거니... 스스로를 위로하면서...)
작전상 후퇴... 다시 구글님께 gtk win32 main ?WinMain을 찾아달라고 졸랐다.
구글님 만세!
WINAPI가 없다는 둥 __argc가 머냐는 둥 툴툴거리는 MSVC에게 #include <windows.h> 한 방을 먹여 주었다.
오케이! 바로 이거야 내가 원하는 건...
#ifdef _WIN32 #include <windows.h> int WINAPI WinMain(int hInstance, int hPrevInstance, int lpCmdLine, int nCmdShow) { return(main(__argc, __argv)); } #endif
그러다가 앞의 메일 끝자락에서 본 mainCRTStartup이 뭔지 떠올랐다!
바로, 걸레같은 ?WinMain 따위를 날려 버리고! 엔트리포인트를 mainCRTStartup으로 바꿔 주었다.
오늘의 삽질 대성공!
이긴 한데... 너무 일찍 끝나버렸다... 새벽까지 해야 하는건데... 일단 블로그 쓰면서 시간을 좀 때우고... 그래도 시간이 남으면... 뭔가 볼만한 영화를 또 하나 찾아야 겠군...
'hacking > linux&gnome' 카테고리의 다른 글
gimp 2.2.6 한글 번역 (0) | 2005.04.22 |
---|---|
효리가 좋아~.~ (0) | 2005.04.09 |
Linux에서 일반 계정으로 WellKnownPorts 바인딩하기 (0) | 2004.06.02 |
Java vs Mono for GNOME? (0) | 2004.06.02 |
Sun/JDS의 그놈 테마/엔진 - Blueprint! (0) | 2004.05.13 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- ***1/2
- 영화
- web
- webapp
- docker
- 땅끝마을
- JavaScript
- ****
- **
- 책
- 자바스크립트
- DeveloperWorks
- 장필순
- 노래
- nodejs
- maven
- Dojo
- 해남
- jQuery
- Ajax
- CSS
- 독후감
- Prototype
- 자전거
- Eclipse
- Java
- ***
- HTML5
- 여행
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함