-
Windows XP에서 WebKit 빌드 하기공장 이야기 2011. 2. 25. 15:37
Windows XP Professional SP3, Visual Studio 2005 Professional(영문), WebKit r75294 기준이다.
최신 버전(r79501)을 받아서 빌드 해보았으나
QTMovie.cpp에서 wkGetQuickTimeMIMETypeList 사용으로 인한 링크 에러가 발생한다.
이 에러는 일단 주석 처리 후 빌더 해보면 WebCore에서 발생 하는 SVG 관련 540개가 넘는 에러 때문에 GG...빌드하는데 3~4일 정도 소요된거 같고. 조급해 하지 말고 하나씩 천천히 진행하길 권장함.
http://www.webkit.org/building/build.html <<< WebKit build 사이트.
Microsoft Visual Studio 2005 Team Suite Service Pack 1
Service Pack 1 Update for Windows Vista(Vista가 아니면 설치 할 필요 없어 보이지만... 난 목숨 걸기 싫어서 설치 했다.)
Visual Studio 2005 Service Pack 1 ATL Security Update
1.KB918559
2.KB935225
3.KB943969
4.KB947315위의 것들은 반듯이 설치 한다. 건강상 이롭다.
Cygwin 설치 - cygwin-downloader.zip 다운 후 압축을 풀고 cygwin-downloader.exe 실행하면
위와 같이 설치해야 할 package를 다운한다. 전부 다운하면 자동으로 Setup을 실행한다.
Install from Local Directory 선택 후 설치 경로를 C:\cygwin으로 한다. 바꾸지 마라... 건강에 해롭다.
동그라미 친곳처럼 설치를 All로 변경한 후 설치 한다. 설치 후 cmd를 열고 C:\cygwin\bin\ash -c /bin/rebaseall 실행한다.
DirectX SDK 설치
the 32-bit version of Debugging Tools for Windows 설치(Optional 이라고 하는데 난 설치 했음)
TortoiseSVN 설치
WebKit r75294 구한 후 C:\cygwin\home\<User Name>\Webkit 압축을 푼다.
WebKit Support Libraries 다운로드 후 C:\cygwin\home\<User Name>\Webkit 위치 시킨다.
Cygwin Bash Shell 열고 "WebKit/Tools/Scripts/update-webkit" 라고 명령을 실행한다.
위와 같이 입력하면 최신 소스로 엎어 버린다.
유지 할려면 update-webkit-auxiliary-libs 만 실행.
C:\cygwin\home\<User Name>\WebKit\WebKit\win\WebKit.vcproj 경로에 있는 WebKit.sln 오픈 후 빌드 한다.
전체를 빌더 하면 무지 오래 걸리고 다행이 한번에 성공하면 문제 없지만 실패하면 원인을 찾기가 힘들다.
그래서 위 그림처럼 Build Order를 확인 후 Project별로 하나씩 하는것을 권장한다.
* Build Error 시
- QTMovieWin, WebCore, WebKit, TestNetscapePlugin, DumpRenderTree 프로젝트에 대해 /wd4819 컴파일 옵션을 추가한다.
- error C2220: warning treated as error - no 'object' 에러 시JavaScriptCore의 프로젝트 옵션의 /WX변경.
- WebCore 아님 Interfaces 에서 빌더 오류가 한번더 나오는데 WebKitSupportLibrary.zip의 압축을 풀어서 include 안에 있는 것들을 C:\cygwin\home\<User Name>\WebKit\WebKitLibraries\win\include 으로 복사 하면 해결이 된다. 정확하지 않은 정보라 할말이 없지만 다시 시작하기엔 넘 상태가 멜롱이다.
- Build 를 Cairo로 설정하면 DownloadBundle.h 관련 Error 만날 수 있다. 그래서 그냥 Debug로 변경 후 빌드 하였다.
- 난 EvaluateJSAfterRemovingPluginElement.cpp 를 오픈 할 수 없다는 에러도 나왔다. 다행히 주변에서 구해서 복사 하였다.
'공장 이야기' 카테고리의 다른 글
Webkit을 이용하여 CSS에서 정의된 LonghandProperties 얻어오기... (0) 2011.09.08 IDOMNode에서 WebCore::Node로 변환하기 (0) 2011.05.04 Windows Mobile에서 Mouse Hook... (0) 2010.08.13 Process Kill (0) 2010.04.22 Windows Mobile에서 키패드 변경 (0) 2010.04.19