시험이 끝나서 삽질을 하다가 WebKit을 리눅스에서 빌드해 보기로 했다. 의외로 빌드 과정은 간단하다. 애플 SVN에서 땡겨 와 준 다음 리눅스용 스크립 돌리면 된다. 그런데 svn checkout http://svn.webkit.org/repository/webkit/trunk WebKit 이 명령어를 실행시키는 순간 오늘 기준 778MB를 긁어오고 있었다. 테스트 파일이 대부분이었지만 뭔가 좀 심각하게 흠좀무서웠다. checkout이 다 끝나고 빌드 명령어를 내렸다. gperf, bison, flex, libsqliet3-dev 등 필요한 개발 패키지는 다 깔려 있었다. 빌드 자체는 간단하다. QTDIR=/usr/share/qt4/ WebKit/WebKitTools/Scripts/build-webkit 명령이 전부. 그러나 그 단순함 뒤에는 뭔가 숨겨져 있다.
우분투 페이스티의 Qt 버전은 4.2.3이다. 그런데 빌드를 하다가 웬 뚱딴지 같은 에러가 나더라.
../../../WebKitQt/Api/qwebnetworkinterface.cpp: In constructor ‘WebCore::WebCoreHttp::WebCoreHttp(QObject*, const WebCore::HostInfo&)’:
../../../WebKitQt/Api/qwebnetworkinterface.cpp:785: error: ‘ConnectionModeHttps’ is not a member of ‘QHttp’
../../../WebKitQt/Api/qwebnetworkinterface.cpp:785: error: ‘ConnectionModeHttp’ is not a member of ‘QHttp’
어라? 왜 이러지 하면서 WebKit의 버그인가 알아보려고 했는데, 이건 Qt 4.2.3의 한계였음이 드러나고 말았다. 친절한 트롤텍씨의 QHttp 클래스 문서에는 Qt 4.3에서 새로 추가된 상수라고 쓰여 있었다. 순간 좌절. 이거 하나 때문에 Qt 4.3을 컴파일하거나 Gutsy로 지금 dist-upgrade 하기에는 너무 아깝다. 결국 우분투 페이스티에서 WebKit 빌드 포기.
Gutsy를 기다리거나 Qt 4.3을 컴파일한 사람이 있으면 그 성공담이나 듣자.
ㄷㄷ;
무섭군요.
도대체 4.2도 불만인 프로그램이 있다는게…