JumuFENG
小狐狸
小狐狸
  • UID37810
  • 注册日期2011-11-18
  • 最后登录2014-06-30
  • 发帖数28
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
阅读:7104回复:3

编译XULRunner

楼主#
更多 发布于:2011-11-21 16:56
我现在在基于firefox源代码开发一个类似于浏览器的东东,要用到xulrunner,并且自己以后要修改源代码,因此编译xulrunner很关键,几经摸索,今天(11.21)成功编译出xulrunner。
因为之前尝试过编译firefox源码,但是我用那个编译xulrunner的时候可能搞混了,而且前段时间我准备用firefox3.6.24这个版本对应的xulrunner来开发,于是我开始尝试编译这个版本的firefox源码以期待成功编译出一个xulrunner。但是没有成功,编译一开始就出现了两个错误,无法继续了。我很纳闷,瞅着错误提示,第一个错误好像是不支持MSVC的版本,我电脑装的是VS2010,我只能用那个start-msvc10.bat啊,我尝试了两遍又将目标转向较高版本了。我下载的7.0版本的xulrunner源代码里面没有client.mk这个文件(但后来发现firefox7.0.1里面有),不知道怎么去编译了,于是我还是转向编译6.0.2这个版本的源代码。下面是编译步骤(由于之前编译过几次firefox。我将之前编译的那些杂七杂八的东西都删除了):
1.将firefox的源码解压到某个目录,我是D:\firefox6.0.2下面(源码可以在这里或其到ftp上下载)
2.到D:\firefox6.0.2\xulrunner\config目录下将那个mozconfig文件复制到D:\firefox6.0.2下
3.双击运行C:\mozilla-build下的start-msvc10.bat,在出现的窗口中输入命令cd d:\ firefox6.0.2回车。
4.输入make -f client.mk build回车,没有错误的话就可以开始进行编译了。
这次我就是按上面的步骤来的,mozconfig文件没有修改。大概编译了两个多小时吧!
编译出来之后在D:\firefox6.0.2\obj-i686-pc-mingw32\dist\bin下面就会找到xulrunner.exe,双击就会显示如下窗口:

描述:xulrunner

图片:xul1.jpg

xulrunner

我进一步测试了这个xulrunner是否可用(测试用例为之前我编写的一个不完整的xulrunner应用程序XULTest)。步骤如下:
1. 我将XULTest文件夹复制到D:\firefox6.0.2\obj-i686-pc-mingw32\dist目录下,其实可以不这样做,这样只是为了方便输入命令。
2. 运行cmd。打开命令行窗口
3. 将当前目录转到D:\firefox6.0.2\obj-i686-pc-mingw32\dist,命令为
cd /d d:\firefox6.0.2\obj-i686-pc-mingw32\dist
4. 输入代码行bin\xulrunner xultest\application.ini(好像是不区分大小写的)回车。就得到了我之前我得到的效果了。

还有一种方式可以运行xulrunner应用程序。将xulrunner文件夹放到xulrunner应用程序目录下(我这里是XULTest目录下),将xulrunner文件夹下面的xulrunner-stub.exe文件复制到XULTest目录下,然后双击这个xulrunner-stub.exe(这个文件名可以自行更改,如:我将它改为test.exe)

描述:test窗口

图片:xultest.jpg

test窗口

点击open按钮弹出一个对话框

文件->退出菜单项也实现了,点击可以退出程序。
本程序其他功能尚未实现。
 为什么最后一张图片传不上来。。。  

上面涉及到的mozilla-build的安装和按需要修改mozconfig文件。Mozilla-build的安装有人不清楚的可以联系我,而对于修改mozconfig文件,之前看过一些资料,我现在还不是很熟悉。

本人正在研究firefox源代码,要做一个基于firefox的应用程序。在mozilla developer net上看到的全是英文的东西,希望在这里能够找到和我干类似工作的人,多多交流,大家共同进步!

测试用例(没有别的XULrunner应用程序测试的可以凑合着用我这个测试用例)
XULTest.rar

今天发现用VS2005/2008  debug firefox的一个网址,http://hi.baidu.com/kernel_linux/blog/item/f275e2efb419c91efdfa3cda.html
这个网址的文章的前两篇文章是转载的别人的用VS2005调试firefox的。而他自己的文章是根据别人的文章加以改进在VS2008里进行firefox的调试。不知道能否用VS2010来调试,我的电脑装的是VS2010.
I would appreciate it if you could leave a comment.
本人研究firefox源代码,目的是编写一个基于firefox内核的应用程序。希望与大家交流,交流群:81424441欢迎加入交流。我的email:zhcbfly@qq.com
The only thing that never changes is change!
JumuFENG
小狐狸
小狐狸
  • UID37810
  • 注册日期2011-11-18
  • 最后登录2014-06-30
  • 发帖数28
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
1楼#
发布于:2011-11-21 16:56
好像文字比较小啊~~

补一句:如果要编译firefox,只需要将第二步改为中的mozconfig文件用D:\firefox6.0.2\browser\config下面的mozconfig文件代替即可。就是修改mozconfig文件,我现在不大清楚mozconfig文件的高级修改,如果有人懂得请不吝赐教,感激不尽!
I would appreciate it if you could leave a comment.
本人研究firefox源代码,目的是编写一个基于firefox内核的应用程序。希望与大家交流,交流群:81424441欢迎加入交流。我的email:zhcbfly@qq.com
The only thing that never changes is change!
JumuFENG
小狐狸
小狐狸
  • UID37810
  • 注册日期2011-11-18
  • 最后登录2014-06-30
  • 发帖数28
  • 经验10枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
2楼#
发布于:2011-11-21 16:56
今天在本论坛发现一个比较早的关于编译firefox的文章。请看这里
I would appreciate it if you could leave a comment.
本人研究firefox源代码,目的是编写一个基于firefox内核的应用程序。希望与大家交流,交流群:81424441欢迎加入交流。我的email:zhcbfly@qq.com
The only thing that never changes is change!
小草莓
小狐狸
小狐狸
  • UID50586
  • 注册日期2015-07-29
  • 最后登录2015-08-13
  • 发帖数2
  • 经验2枚
  • 威望0点
  • 贡献值0点
  • 好评度0点
3楼#
发布于:2015-08-12 14:31
请问您还在研究ff源码修改吗~?我现在也需要修改ff不知道可否给我一些意见~~~
游客

返回顶部