设为首页 收藏本站
查看: 667|回复: 0

[经验分享] Mac OS X 下编译webkit全过程

[复制链接]

尚未签到

发表于 2015-12-31 09:31:31 | 显示全部楼层 |阅读模式
系统信息:Mac OS 10.9.4

环境:Xcode 5.1


请给予足够的耐心,等待源码下载、排除路径问题、编译等一系列漫长的时间。


下载源码:

以下下载地址均来自:webkit官方网站 www. webkit.org


1. 你可以去http://nightly.webkit.org/下载source文件

(此时名为WebKit r172372,约35.6M,随更新可能会有所变化)


2. 你可以在浏览器中打开以网址即可开始下载源码压缩包

    (此时为1G左右,好像是多了一些debug的文件)

           http://nightly.webkit.org/files/WebKit-SVN-source.tar.bz2

      然后在终端进入Downloads文件夹但后解压缩

   (此部亦可打开Finder找到文件后双击进行解压)

          tar jxvf WebKit-SVN-source.tar.bz2


3. 你可以在终端输入以下命令,获取源码

      svncheckout https://svn.webkit.org/repository/webkit/trunk

      注:如果提示找不到svn命令,请自行安装svn


编译源码:

一、用Xcode打开webkit主目录下的工程文件

二、Xcode的菜单File->WorkspaceSettings->Build->Derived Data Location一栏选择Workspace-relative,输入WebKitBuild ,然后选择Advanced…,在弹出框中选择Custom选项,后面选择Relative to Workspace

之后,在Products后输入WebKitBuild,

            在Intermediates后输入Build/WebKitBuild

三、Xcode的菜单Product->Scheme->EditScheme…

       在弹出框中,最上端可以选择Scheme,请选择All Source(target WebProcess)

       在中间Executable选择WebProcess(这样编译后会出现一个Safari,在此也可以选择MiniBrowser.app,这也是Webkit提供的UI层,编译完后可再次到此处修改)

四、点击Run编译并运行

五、稍等之后,编译出错?很正常,莫慌莫慌。记住,无论出现什么错误,都不会是源码的问题,大多数情况下都会是路径配置问题。(由于版本的不同,缺少的文件可能不同,所以还是请大家编译找到错误之后,针对性拷贝文件,勿急勿躁)

以下是本人碰到的问题,由于网上关于Xcode下编译webkit内核较少,有问题大多数出在头文件处,处理方式类似如下

(1)  llvm-c/Analysis.h file notFound

       在webkit的主目录下,有一个WebKitLibraries的文件夹下,其下有个LLVMincludesMavericks.tar.bz2,解压,进入解压后的目录,有llvm,llvm-c两个文件夹,将这两个文件夹都复制到<webkit主目录> / WebKitBuild/<Configuration>/usr/local/include目录下;  默认情况下,Configuration为Debug;


继续编译,出现第二个错

(2)  library not found for–lLLVMTablleGen

         其意思是找不到libLLVMTablleGen.a这个库,故顺着刚才的思路,打开<webkit主目录>下的WebKitLibraries文件夹,其下还有另外一个压缩包LLVMLibrariesMavericks.tar.bz2,解压,进入目录,发现有很多后缀为.a的文件,将所有文件直接复制到<webkit主目录> / WebKitBuild/<Configuration>/usr/local目录下;  默认情况下,Configuration为Debug;


编译,等了好久好久(编译了两个主要的Core,这两个非常慢),之后

又出错了


(3)  WebKitSystemInterface.h filenot found

       直觉告诉我还去刚才的<webkit主目录>下的WebKitLibraries文件夹下找,果然,又看到了WebKitSystemInterface.h,果断又复制到<webkit主目录> / WebKitBuild/<Configuration>/usr/local/include目录下;  默认情况下,Configuration为Debug;


复制完之后,我留了一个心眼,多看了这个目录几眼,我去,居然还有个

libWebKitSystemInterfaceMavericks.a,直觉告诉我,这货一定还会出错,索性,将其直接复制到<webkit主目录> / WebKitBuild/<Configuration>/usr/local目录下;  默认情况下,Configuration为Debug;


六、点击Run编译并运行,这次就可以正常编译了(我是这样的,也可能会出现别的错误自行解决,大多数都会是这种路径的问题),编译过程非常漫长,请耐心等待,另外,编译完之后<webkit主目录>会变得非常庞大。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-158696-1-1.html 上篇帖子: 通向KDE4之路(三):完全的Mac OS X撑持 下篇帖子: Mac OS 或Linux 上的makesis
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表