Page 1 of 1

윈도우에서 firefox 컴파일, 도와주세요~

Posted: 2007 05 07 15:25 38
by zweiwelten
안녕하세요, 윈도우에서 모질라를 컴파일하고자 하는 어린양입니다. (ㅜㅡ)

벌써 일주일 넘게 시도하고 있는데, 잘 되지 않아 이렇게 글을 올립니다.

아래 사이트를 참조하여 시도하였습니다.
http://developer.mozilla.org/en/docs/Wi ... 8_Branches

위 사이트의 지시대로 따라했는데, 1시간정도 진행후, 다음과 같은 에러로 종료됩니다. 사용한 소스는 firefox-1.5b1-source.tar 입니다.
(Cygwin.setup 파일을 설치한후, make 파일은 3.80으로 교체하였습니다.)

NPT@your-ea4fd571f3 ~
$ make -f client.mk build
...... (생략)
g:/mozilla/firefox-1.5b1-source.tar/firefox-1.5b1-source/mozilla/embedding/brows
er/activex/src/plugin/StdAfx.h(52) : warning C4005: '_WIN32_WINNT' : macro redef
inition
unknown(0) : see previous definition of '_WIN32_WINNT'
C:\Program Files\Microsoft SDK\include\comdef.h(336) : error C2367: 'IHTMLContro
lElement' : redefinition; different uuid specifiers
C:\PROGRA~1\MICROS~3\VC98\INCLUDE\mshtml.h(16768) : see declaration of '
IHTMLControlElement'
make[6]: *** [StdAfx.obj] Error 2
make[6]: Leaving directory `/cygdrive/g/mozilla/firefox-1.5b1-source.tar/firefox
-1.5b1-source/mozilla/embedding/browser/activex/src/plugin'
make[5]: *** [libs] Error 2
make[5]: Leaving directory `/cygdrive/g/mozilla/firefox-1.5b1-source.tar/firefox
-1.5b1-source/mozilla/embedding/browser/activex/src'
make[4]: *** [libs] Error 2
make[4]: Leaving directory `/cygdrive/g/mozilla/firefox-1.5b1-source.tar/firefox
-1.5b1-source/mozilla/embedding/browser'
make[3]: *** [libs] Error 2
make[3]: Leaving directory `/cygdrive/g/mozilla/firefox-1.5b1-source.tar/firefox
-1.5b1-source/mozilla/embedding'
make[2]: *** [tier_9] Error 2
make[2]: Leaving directory `/cygdrive/g/mozilla/firefox-1.5b1-source.tar/firefox
-1.5b1-source/mozilla'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/cygdrive/g/mozilla/firefox-1.5b1-source.tar/firefox
-1.5b1-source/mozilla'
make: *** [build] Error 2


제가 컴파일하고자 하는 환경은 다음과 같습니다.
OS : windowsXP Home Edition
VC++ : Visual Studio 6.0 Enterprise Edition
platform sdk : February 2003 설치
Visual C++ Service Pack 5 설치
Visual C++ Processor Pack 설치


몇번을 해도 똑같은 에러가 발생합니다. ㅜㅠ

원인을 추정하여 질문을 요약하면 다음과 같습니다.

1. C:\Program Files\Microsoft SDK\include\comdef.h(336) : error C2367:
여기서 최초 에러가 발생하는 것으로 보아, platform sdk 문제인 듯 하나, vs6.0에서는 platform sdk (February 2003) 가 맞는 버젼으로 알고 있는데, 맞나요?

2. 혹, XP 버젼이 Home Edition이라서 문제가 될 수도 있나요?

3. 아니면 ".mozconfig"파일을 다음과 같이 만들어서 넣었는데, 이게 잘못된 건가요?
. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_CO_PROJECT=browser
ac_add_options --enable-application=browser

4. 혹시 "cygwin.bat" 은 다음과 같이 했는데, 틀린 건가요?

@echo off

C:
chdir C:\mozilla\cygwin\bin

rem --- Set HOME so that cvs and ssh work correctly
rem --- cvs uses HOME to locate your .cvspass file, and ssh to locate your .ssh file
rem --- if you are using ssh, your HOME should match the home directory specified in /etc/passwd. See http://www.cygwin.com/faq/faq0.html.
set HOME=g:\mozilla\firefox-1.5b1-source.tar\firefox-1.5b1-source\mozilla

rem --- Set VCVARS to wherever the MSVC vcvars.bat file is found
set VCVARS=C:\Program Files\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT

rem --- Set MSSDK to wherever the MS SDK is installed
rem --- The separate SDK is only required for MSVC6
set MSSDK=C:\Program Files\Microsoft SDK

rem --- Set MOZ_TOOLS to wherever you have the moztools packaged installed
set MOZ_TOOLS=C:\moztools

rem --- Set CYGWINBASE to wherever cygwin is installed
rem --- Do not use CYGWIN or else cygserver, cygrunsrv, and other cygwin services will not function properly.
rem --- The CYGWIN variable is also used to sort of change the behaviour of Cygwin.
set CYGWINBASE=C:\mozilla\cygwin
rem --- Make sure Cygwin does not print out a DOS style path warning
set CYGWIN=nodosfilewarning

rem --- Prepend Cygwin path
rem --- This is necessary so that cygwin find is ahead of windows find.exe in the PATH, but cygwin link is after MSVC link.exe.
rem PATH=%CYGWINBASE%\bin;%PATH%

rem --- Set MSVC environment vars
call "%VCVARS%"

rem --- Prepend SDK paths
rem --- Only required for MSVC6
set PATH=%MSSDK%\bin;%PATH%
set INCLUDE=%MSSDK%\include;%INCLUDE%
set LIB=%MSSDK%\lib;%LIB%


rem -- moztools comes last after glib/libIDL
set PATH=%PATH%;%MOZ_TOOLS%\bin

rem --- Now the PATH variable contains:
rem MS-SDK; MSVC; Cygwin; Windows; glib/libIDL; Moztools

rem --- Typically the last thing the script does is launch a cygwin shell
rem --- WARNING: This may reset your carefully setup path! Check your /etc/profile and ~/.profile files.
bash --login -i

고수님들의 도움의 손길 부탁드립니다. ^^