compile xulrunning in windows

 还没有做,先引一篇文章

http://blog.csdn.net/nhsoft/archive/2006/11/01/1360862.aspx

 

1)

首先下载xulruuner的source

ftp://ftp.mozilla.org/pub

我选择的是xulrunner-1.9.0.5-source.tar.bz2

 

2)

下载moztools

http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/moztools-static.zip

把这个工具解开后放到c:/moztools

 

3)

下载vcx-moztools.zip,我选的是vc8的

http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/historic

把vvc8-moztools目录里的bin , include , lib目录拷贝到和moztools一起

 

4)

下载Cygwin

http://www.cygwin.com/

在线安装的packet必须包括下面的几个包

ash -- UNIX-like command line interpreter shell (Base category)

coreutils -- GNU core utilities (includes fileutils, install, sh-utils, and textutils) (Base category)

cvs -- concurrent versions system (Devel category)

diffutils -- file comparison utility (Base category)

findutils (Base category)

gawk -- pattern matching language (Base and Interpretors categories)

grep -- text search tool (Base category)

libiconv -- character set conversion (Devel category)

make 3.80 (not 3.81!) -- dependency analyzer for software builds (Devel category)

patchutils -- a small collection of programs that operate on patch files (Devel category)

perl -- a scripting language used to control parts of the build (Interpreters category)

sed -- a search and replace language (Base category)

unzip -- zip file extraction (Archive category)

zip -- zip file creation (Archive category)

可以在 cygwin 命令窗口中输入相关命令检测是否安装了相关的程序 ., 其实如果下载了 firefxo 源代码的话 , 象 cvs 中的都不是必须的 .

 

 

5)

修改C:/cygwin/cygwin.bat为

 

@echo off

SET MOZ_TOOLS=C:/moztools

SET GLIB_PREFIX=C:/moztools

SET LIBIDL_PREFIX=C:/moztools

SET CYGWINBASE=C:/cygwin

rem --- clean slate start

SET INCLUDE=

SET LIB=

SET PATH=C:/;C:/windows/system32;C:/windows;C:/windows/system32/wbem

CALL "C:/Program Files/Microsoft Visual Studio 8/VC/vcvarsall.bat"

SET PATH=%PATH%;%GLIB_PREFIX%;%GLIB_PREFIX%/bin

SET INCLUDE=%GLIB_PREFIX%/include;%INCLUDE%;%MINGWBASE%/include

SET LIB=%GLIB_PREFIX%/lib;%LIB%

SET PATH=%PATH%;%MOZ_TOOLS%/bin

 

C:

chdir C:/cygwin/bin

bash --login -i

 

 6)

在xulrunner的mozilla目录下创建.mozconfig文件(命令行下创建,忘记了创建文件是什么命令,手动见了一个a

用copy a .mozconfig弄的==打开记事本直接保存成.mozconfig就可以),内容

        mk_add_options MOZ_CO_PROJECT=xulrunner
        ac_add_options --enable-application=xulrunner
        mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-opt-xulrunner-small
        ac_add_options --enable-optimize
        ac_add_options --disable-debug
        ac_add_options --disable-static
        ac_add_options --enable-shared
        ac_add_options --disable-ldap
        ac_add_options --disable-mailnews
        ac_add_options --enable-extensions=default
        ac_add_options --enable-crypto
        ac_add_options --disable-composer
        ac_add_options --enable-single-profile
        ac_add_options --disable-profilesharing
        ac_add_options --disable-profilelocking
        ac_add_options --disable-accessibility
        ac_add_options --enable-jsd
        ac_add_options --disable-installer
        ac_add_options --enable-xpinstall
        ac_add_options --disable-postscript
        ac_add_options --disable-mathml
        ac_add_options --enable-xpfe-components
        ac_add_options --disable-dtd-debug
        ac_add_options --disable-logging
        ac_add_options --disable-tests
        ac_add_options --enable-necko-protocols=http,file,about,res,jar,data
        ac_add_options --enable-image-decoders=png,gif,jpeg
        ac_add_options --enable-svg
        ac_add_options --enable-svg-renderer=gdiplus
        ac_add_options --disable-javaxpcom
        ac_add_options --disable-activex
        ac_add_options --disable-activex-scripting
        ac_add_options --enable-canvas

 

7)

双击C:/cygwin/cygwin.bat来运行,如果不报告错误,顺利的进入命令行就ok了

然后进入xulrunner的mozilla目录(直接  cd c:的命令是可以用的)

敲入

make -f client.mk  build

来编译

 

8)

8-1)

提示No rule to make target `../protocol/jar/src/nkjar_s.lib

修改 .mozconfig

ac_add_options --enable-necko-protocols=http,file,about,res,data

因为

on Trunk, the jar protocol isn't part of Necko anymore.

 

8-2)

1.9的包需要vista SDK(http://www.microsoft.com/downloads/details.aspx?familyid=4377F86D-C913-4B5C-B87E-EF72E5B4E065&displaylang=en)。我觉得在编译之前https://developer.mozilla.org/en/Build_Documentation上的内容还是需要看看的。

8-3)

make[5]: Entering directory `/cygdrive/c/mozilla/security/coreconf'
../coreconf/rules.mk:372: target `c' doesn't match the target pattern
../coreconf/rules.mk:419: target `c' doesn't match the target pattern
../coreconf/rules.mk:420: warning: overriding commands for target `c'
../coreconf/rules.mk:373: warning: ignoring old commands for target `c'
../coreconf/rules.mk:448: target `c' doesn't match the target pattern
../coreconf/rules.mk:449: warning: overriding commands for target `c'
../coreconf/rules.mk:420: warning: ignoring old commands for target `c'
../coreconf/rules.mk:452: target `c' doesn't match the target pattern
../coreconf/rules.mk:453: warning: overriding commands for target `c'
../coreconf/rules.mk:449: warning: ignoring old commands for target `c'
../coreconf/rules.mk:456: target `c' doesn't match the target pattern
../coreconf/rules.mk:457: warning: overriding commands for target `c'
../coreconf/rules.mk:453: warning: ignoring old commands for target `c'
../coreconf/rules.mk:471: target `c' doesn't match the target pattern
../coreconf/rules.mk:472: warning: overriding commands for target `c'
../coreconf/rules.mk:457: warning: ignoring old commands for target `c'
../coreconf/rules.mk:475: target `c' doesn't match the target pattern
../coreconf/rules.mk:476: warning: overriding commands for target `c'
../coreconf/rules.mk:472: warning: ignoring old commands for target `c'
../coreconf/rules.mk:973: *** multiple target patterns.  Stop.
make[5]: Leaving directory `/cygdrive/c/mozilla/security/coreconf'
make[4]: *** [.nss.cleaned] Error 2
make[4]: Leaving directory `/cygdrive/c/mozilla/objdir-opt-xulrunner-small/secu
ity/manager'
make[3]: *** [export_tier_toolkit] Error 2
make[3]: Leaving directory `/cygdrive/c/mozilla/objdir-opt-xulrunner-small'
make[2]: *** [tier_toolkit] Error 2
make[2]: Leaving directory `/cygdrive/c/mozilla/objdir-opt-xulrunner-small'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/cygdrive/c/mozilla/objdir-opt-xulrunner-small'
make: *** [build] Error 2

解决方法:makecygwin现在默认是3.81的,需要3.8的,找一个替换

 

8-4)

c:/mozilla/toolkit/components/parentalcontrols/src/nsParentalControlsServiceWin.
cpp(239) : error C2660: “IWPCWebSettings::RequestURLOverride”: 函数不接受 5 个
参数
c:/mozilla/toolkit/components/parentalcontrols/src/nsParentalControlsServiceWin.
cpp(315) : error C2660: “IWPCWebSettings::RequestURLOverride”: 函数不接受 5 个
参数
make[6]: *** [nsParentalControlsServiceWin.obj] Error 2
make[6]: Leaving directory `/cygdrive/c/mozilla/objdir-opt-xulrunner-small/toolk
it/components/parentalcontrols/src'

解决方法:vista sdk必须是新的那个6.1.16384.10,我使用的原来下载的一个sdk,在文件

wpcapi.h中的接口有变化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值