开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 7968|回复: 9
收起左侧

[技术专题] Google V8 引擎 编译

[复制链接]
结帖率:50% (1/2)
发表于 2019-10-30 14:54:53 | 显示全部楼层 |阅读模式   四川省宜宾市
本帖最后由 tsqdhh 于 2019-10-30 15:12 编辑

摸索了下google v8 引擎的编译流程,结合官方文档和自己理解。总结出的编译教程。
易语言能用的v8引擎版本已经太老了,目前最新的版本已经到8.0了

首先,前提是你可以访问google服务器,如果你没办法通过代理等方法访问那就无法进行下面步骤了。

系统要求
#推荐8GB或以上RAM的64位Intel计算机
#NTFS格式的硬盘驱动器
#Windows 7或更高版本
#Visual Studio 2017 and 2019(您必须安装“使用C ++进行桌面开发”组件和“ MFC / ATL支持”子组件,并且需要安装Windows调试工具 控制面板→程序→程序和功能→选择“ Windows软件开发工具包”→更改→更改→选中“ Windows调试工具” ”→更改)
vs安装.jpg vs更改.jpg 批注 2019-10-30 134833.png
具体步骤
第一步:下载解压 仓库工具集 (depot_tools)到某处。官方原始下载地址:https://storage.googleapis.com/chrome-infra/depot_tools.zip
第二步:设置环境变量  控制面板→系统和安全性→系统→高级系统设置→环境变量
             编辑系统变量 Path,增加depot_tools文件夹路径(如:d:\v8\depot_tools),排序到最前面(避免系统有装其它版本Python及Git等工具导致过度编译。)
             新建系统变量 DEPOT_TOOLS_WIN_TOOLCHAIN系统变量,值为0,(这告诉depot_tools使用本地安装的Visual Studio版本。)
             如果要使用Visual Studio 2019而不是Visual Studio 2017(默认设置) 新建系统变量 GYP_MSVS_VERSION,值为2019
环境变量1.jpg    
第三步:接下来打开CMD命令行,如果使用代理访问,需先设置代理地址
  1. set http_proxy=http://127.0.0.1:1080
  2. set https_proxy=http://127.0.0.1:1080
复制代码

             运行以下命令,首次运行时gclient将安装使用该代码所需的所有Windows依赖,包括msysgit和python。大约520M,视网络情况请耐心等待
  1. gclient
复制代码

             成功后出现如下gclient命令行帮助提示
gclient.png
第四步:选择一个目录,比如:d:\v8
  1. d:
  2. cd v8
复制代码

             如果第一次使用git,设置下git基本配置信息,5条命令
  1. git config --global user.name "名字"
  2. git config --global user.email "邮箱"
  3. git config --global core.autocrlf false
  4. git config --global core.filemode false
  5. git config --global branch.autosetuprebase always
复制代码

             运行以下命令,从仓库获取V8源代码。(大约2.2G)视网络情况请耐心等待
  1. fetch v8
复制代码

如果没有出错,至此,所有源代码和环境就下载完成,接下来开始构建和编译。


进入v8源码目录
  1. cd d:\V8\V8
复制代码

编译方式一:快捷编译
  1. Python tools\dev\gm.py x64.release
复制代码
编译方式二:原始手动编译
#生成构建文件
  1. gn args out/foo
复制代码
这将打开一个用于指定gn编译参数的文本编辑器窗口,填入编译参数
  1. is_component_build=false     # true 编译动态库文件 false 静态库文件
  2. is_debug=false                    # true 编译调试版本debug false 编译发布版本release
  3. target_cpu = "x64"              # x64 x86 64位或32位
复制代码
参数非常多,自己选择输入,更多具体参数概述可以用以下命令查看
  1. gn args out/foo --list
复制代码
最后输入命令开始编译
  1. ninja -C out/foo
复制代码


编译完成后out/foo目录下会生成编译好的 exe lib 或dll

评分

参与人数 2好评 +1 精币 +6 收起 理由
已注销493225 + 1 感谢分享,很给力!~
冰点 + 1 + 5 支持开源~!感谢分享

查看全部评分


结帖率:100% (3/3)

签到天数: 1 天

发表于 2022-5-12 23:48:55 | 显示全部楼层   湖北省随州市
不明觉厉
回复 支持 反对

使用道具 举报

结帖率:65% (22/34)

签到天数: 1 天

发表于 2019-12-8 12:24:07 | 显示全部楼层   安徽省芜湖市
感谢分享。。。。。。。。。
回复 支持 反对

使用道具 举报

结帖率:100% (3/3)
发表于 2019-11-18 20:27:07 | 显示全部楼层   河北省廊坊市
学习了   
回复 支持 反对

使用道具 举报

头像被屏蔽
结帖率:0% (0/1)
发表于 2019-11-6 00:11:27 | 显示全部楼层   广东省中山市
谢谢大神的分享~~~!!
回复 支持 反对

使用道具 举报

签到天数: 22 天

发表于 2019-11-2 10:48:44 | 显示全部楼层   河北省保定市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2019-10-31 14:19:35 | 显示全部楼层   广东省东莞市
感谢分享,!!!
回复 支持 反对

使用道具 举报

签到天数: 19 天

发表于 2019-10-30 15:31:51 | 显示全部楼层   广东省东莞市
顶顶谢谢分享
回复 支持 反对

使用道具 举报

结帖率:91% (10/11)

签到天数: 1 天

发表于 2019-10-30 15:21:01 | 显示全部楼层   广东省深圳市
老哥,有没有编译好的DLL
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

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