chrome编译环境搭建 zz
2009-10-02 05:17
344 查看
鼎鼎大名的chrome出世了,迫不及待的一睹芳容。版本还不成熟,功能不够完善,等等。这也与我的最初的想法差别不大。其实本身就浏览器多我而言吸引力不是太大,关键在于可以逐步的经历一个浏览器的成长才是最令人兴奋的事情。说个不是很恰当的例子,养孩子其实不是希望一下子就能到18岁,那样太没趣了,成长的过程才是最让人留恋的,可惜我没有孩子,这个玩意也不是我的孩子, :P~
不再废话,从下载开始把,起初用svn下载,一个字:慢。而且一古脑的下载,整整下了好几天,还没有完成,幸运的是找到一个打包的版本,总算搞定。
最初的vs环境是2005,直接打开sln文件编译看看,似乎打不开,未知原因,文件比较了下,可能是换行符的问题,但幸运的是从svn的版本拷贝过来则可以使用。
编译,错误错误,error无数。然后仔细查找原因,主要缺一个vsstyle.h的头文件,修改WINVER和_WIN32_WINNT的编译参数为0x0501也不行,原来需要 windows sdk 2008 环境,官方下载,居然有一个G,算了,还是直接安装个vs2008吧。
于是又经过了不少的折腾--ghost还原原来的干净系统,重新安装vs2008。哎,区区两句话,折磨阿,特别是那些大量的工作必须软件。。。
重新编译,都可以通过,但是遇到了一个头文件的编译警告,导致日志系统不停的输出,也太慢,于是取消编译,修改再来,下面是我的文件修改处,当然前面修改的WINVER/_WIN32_WINNT也要还原:
chromium/src/build/SConscript.main:
CCFLAGS = [
'/wd4503',
'/wd4819',
'/wd4396',
],
chromium/src/build/internal/essential.vsprops:
DisableSpecificWarnings="4503; 4819; 4396"
解释就不用说了吧。继续。
这次终于基本都编译完成,说基本是因为还有两个错误,但这两个错误由于不在核心调用模块,所以也就可以程序的单步运行阅读了。这两个错误分别是:memory_watcher.cc和call_stack.cc,都和std::map相关,查找原因,无果,在一个网站上看到认为是一个vs的bug,但到微软的问题列表上又认为不是,而我对stl基本上一知半解,所以也就直接作罢,把实例化的总共三个变量部分注释掉,省得碍眼。(有高人路过可以贴一下解决办法),下面是其部分:
29>call_stack.cc
29>C:/Program Files/Microsoft Visual Studio 9.0/VC/include/xtree(52) : error C2664: “std::_Tmap_traits<_Kty,_Ty,_Pr,_Alloc,_Mfl>::_Tmap_traits(_Pr,_Alloc)”: 不能将参数 2 从“PrivateHookAllocator<T>”转换为“PrivateHookAllocator<T>”
29> with
29> [
29> _Kty=int32,
29> _Ty=std::string,
29> _Pr=std::less<int32>,
29> _Alloc=PrivateHookAllocator<int32>,
29> _Mfl=false
29> ]
其实这里说到我的一个想法,从学习c++开始,就非常讨厌这样的错误/警告提示,没有一点美感可言,而且vs本身对这个问题的提示也感觉不是那么直观。
闲话不提,直接运行chrome.exe,嘿嘿。直接输入地址,非常好。预期的整体编译环境目的已经达到。目前正在对chrome的整体架构进行学习,可惜doxygen的功能还不够强大。需要逐步的进行阅读。。。来日方长啊。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/martmy/archive/2008/09/17/2942712.aspx
不再废话,从下载开始把,起初用svn下载,一个字:慢。而且一古脑的下载,整整下了好几天,还没有完成,幸运的是找到一个打包的版本,总算搞定。
最初的vs环境是2005,直接打开sln文件编译看看,似乎打不开,未知原因,文件比较了下,可能是换行符的问题,但幸运的是从svn的版本拷贝过来则可以使用。
编译,错误错误,error无数。然后仔细查找原因,主要缺一个vsstyle.h的头文件,修改WINVER和_WIN32_WINNT的编译参数为0x0501也不行,原来需要 windows sdk 2008 环境,官方下载,居然有一个G,算了,还是直接安装个vs2008吧。
于是又经过了不少的折腾--ghost还原原来的干净系统,重新安装vs2008。哎,区区两句话,折磨阿,特别是那些大量的工作必须软件。。。
重新编译,都可以通过,但是遇到了一个头文件的编译警告,导致日志系统不停的输出,也太慢,于是取消编译,修改再来,下面是我的文件修改处,当然前面修改的WINVER/_WIN32_WINNT也要还原:
chromium/src/build/SConscript.main:
CCFLAGS = [
'/wd4503',
'/wd4819',
'/wd4396',
],
chromium/src/build/internal/essential.vsprops:
DisableSpecificWarnings="4503; 4819; 4396"
解释就不用说了吧。继续。
这次终于基本都编译完成,说基本是因为还有两个错误,但这两个错误由于不在核心调用模块,所以也就可以程序的单步运行阅读了。这两个错误分别是:memory_watcher.cc和call_stack.cc,都和std::map相关,查找原因,无果,在一个网站上看到认为是一个vs的bug,但到微软的问题列表上又认为不是,而我对stl基本上一知半解,所以也就直接作罢,把实例化的总共三个变量部分注释掉,省得碍眼。(有高人路过可以贴一下解决办法),下面是其部分:
29>call_stack.cc
29>C:/Program Files/Microsoft Visual Studio 9.0/VC/include/xtree(52) : error C2664: “std::_Tmap_traits<_Kty,_Ty,_Pr,_Alloc,_Mfl>::_Tmap_traits(_Pr,_Alloc)”: 不能将参数 2 从“PrivateHookAllocator<T>”转换为“PrivateHookAllocator<T>”
29> with
29> [
29> _Kty=int32,
29> _Ty=std::string,
29> _Pr=std::less<int32>,
29> _Alloc=PrivateHookAllocator<int32>,
29> _Mfl=false
29> ]
其实这里说到我的一个想法,从学习c++开始,就非常讨厌这样的错误/警告提示,没有一点美感可言,而且vs本身对这个问题的提示也感觉不是那么直观。
闲话不提,直接运行chrome.exe,嘿嘿。直接输入地址,非常好。预期的整体编译环境目的已经达到。目前正在对chrome的整体架构进行学习,可惜doxygen的功能还不够强大。需要逐步的进行阅读。。。来日方长啊。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/martmy/archive/2008/09/17/2942712.aspx
相关文章推荐
- 用NDK搭建Android的交叉编译环境[zz]
- uCOSII 编译环境搭建
- Tiny6410 学习笔记(一)编译环境搭建
- linux安装arm-linux-gcc-4.3.2(交叉编译环境搭建)
- 微服务:ICE 入门之 编译环境搭建
- 采用buildroot搭建ARM的交叉编译环境
- android2.2 编译环境搭建总结
- 手把手教你搭建智能合约测试环境、开发、编译、部署以及如何通过JS调用合约方法
- Java调用GDAL 写入矢量文件编译环境搭建
- cocos2.2.3 HelloCpp TestCpp android 环境搭建 编译
- Android NDK&&JNI 编译环境的搭建
- Ubuntu 16.04.3下FFmpeg编译与开发环境搭建
- Windows7环境下搭建Cocos2d-x3.3环境并配置android交叉编译环境
- android&nbsp;编译环境&nbsp;搭建
- MiniGUI移植s3c2440(三) 搭建pc编译环境
- Linux 0.11内核编译和bochs上的实验环境的搭建
- 在Ubuntu 12.04 64bit搭建Android编译环境后,重启卡住在Ubuntu logo,进不了图形界面
- STM32 gcc编译环境搭建
- Ubuntu编译源码搭建PHP开发环境
- 在Leopard中编译搭建非官方iPhone toolchain开发环境并整合到XCode