首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在用gn build构建v8js之后编译V8扩展(而不是gyp)

在用gn build构建v8js之后编译V8扩展(而不是gyp)
EN

Stack Overflow用户
提问于 2016-10-17 17:06:34
回答 2查看 2.5K关注 0票数 2

谷歌已经决定放弃建立V8。推荐的方法是使用gn构建。

但是,v8js无法找到所需的库,并通过以下方式退出:

代码语言:javascript
复制
checking for V8 Javascript Engine... yes, shared
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for C standard version... c++11
checking how to allow c++11 narrowing... -Wno-narrowing
checking for V8 version... NONE
configure: error: could not determine libv8 version

在用gn编译v8js之后,需要做些什么来编译V8扩展?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-17 17:14:05

经过两天的实验,我成功地编译了用gn构建的针对v8js的V8 (相对于现在不推荐的gyp)。

遵循初始的结帐说明https://github.com/v8/v8/wiki/Building%20with%20GN

tools/dev/v8gen.py x64.release步骤之后,请执行以下操作:

代码语言:javascript
复制
$ nano out.gn/x64.release/args.gn

应该是这样的:

代码语言:javascript
复制
is_debug = false
target_cpu = "x64"
is_component_build = true
v8_enable_i18n_support = false

此时,我不知道如何正确构建i18n支持。

不确定这是否真的是必需的,但我也用:"v8_enable_i18n_support":false更新了

编译(大约需要45分钟):

代码语言:javascript
复制
$ ninja -C out.gn/x64.release

一经汇编:

代码语言:javascript
复制
$ cp out.gn/x64.release/lib*.so /usr/lib/ && cp -R include/* /usr/include
$ cp out.gn/x64.release/natives_blob.bin /usr/lib
$ cp out.gn/x64.release/snapshot_blob.bin /usr/lib
$ cd out.gn/x64.release/obj
$ ar rcsDT libv8_libplatform.a v8_libplatform/*.o
$ echo -e "create /usr/lib/libv8_libplatform.a\naddlib /usr/local/src/v8/out.gn/x64.release/obj/libv8_libplatform.a\nsave\nend" | sudo ar -M

在此之后,请签出v8js并像往常一样编译:

代码语言:javascript
复制
phpize
./configure
make && make install
票数 2
EN

Stack Overflow用户

发布于 2019-06-01 04:33:22

创建/usr/lib/lib 8_libplatform.a\naddlib /usr/local/src/v8/out.gn/x64.release/obj/libv8_libplatform.a\nsave\nend“sudo ar -M

打印:/usr/local/src/v8/out.gn/x64.release/obj/libv8_libplatform.a:没有这样的文件或目录

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40091987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档