-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update v8 to 11.6.189.22 #16364
Update v8 to 11.6.189.22 #16364
Conversation
Interface Check ReportThis pull request does not change any public interfaces ! |
0561398
to
eefeb9e
Compare
This commit shows v8 has been updated to 11.6, but the v8 version in v8-version.h did not change. @minggo |
@dumganhar kuoruan/libv8#8 大佬知道是什么原因么? 就是基于你这个版本去调研验证的~ |
@dumganhar 切到 3d-v3.3.1 分支,当时你们还是用的 8.0 版本的V8
就可以正常这么单独打so,然后集成项目,动态下发so. 但9.x 以及 11.x 版本就不行了的, 可能的原因是什么呢? |
你编译v8的时候指定 symbol_level为2就带符号了。我们预编译的v8没有带符号主要是因为带符号太大了。 |
谢谢大佬答疑~ |
如果能在Mac上编译就好了的~ 但好像不太行~ 只能用Linux,不过Linux是有系统版本约束的~ (我记得~ |
不过其实也奇怪🤔, 我看你的.a文件其实有符号的,但是确实8.x版本走share的方式出来的so有符号,11.x就不行了。确实有可能是编译参数差异导致的, 我倒是想装个ubuntu虚拟机拉你的v8代码试试~ 但我不知道你的基于哪个系统版本~ |
mac 和 ubuntu 都可以的。
yes |
Mac直接拉你的工程,然后执行你外层的android的编译脚本? 还是跟Linux一样,要先执行一下那个系统环境安装: ./build/install-build-deps.sh ?然后再执行你的android脚本就可以编译了? 几年前Linux我记得是这个流程。 |
如果是这样子的话, 我上午可以搞一把试试,但u1s1, 编译v8挺艰辛的… Mac我记得当初直接报错了🙅…现在可以了吗? |
我之前可能理解错误了。mac 上编译 android 的 新版本的 v8,可能已经不行的。必须用 ubuntu 的。 |
Mac 拉完工程执行报错: |
嗯嗯, 是的; 我记得也是不行的~ |
Ubuntu 22.04.4 LTS |
我用的是20.04 版本, 执行的时候 也是报错 gn.py: Could not find gn executable at ... linux64/gn 我的操作顺序是
|
是不是少配置了什么环境? |
参考一下这个 github action 里面的 step: https://github.com/cocos/v8/blob/11.6/.github/workflows/build.yml#L279 |
我那个仓库是编译静态库的。所以默认把函数符号不导出的,这样可以减小包体。你可以看这个改动:
你要编译动态库,那么自己研究一下吧。这里可能要还原。 |
原来如此, 感恩感恩~ |
@
本地装了一个Linux , 编译了一把, 确实是这个原因, 基于tags/11.6.189.22-r3, 编译了64的,能正常运行起来啦~ 和外层的 symbol_level 无关, 确实是symbol_visibility_hidden这个地方导致链接符号不出来~ 感谢大佬 @dumganhar |
@liufsd 搞定就好。 👍 |
Re: #15552
cocos/cocos-engine-external#425
cocos/cocos-engine-external#432
Changelog
Continuous Integration
This pull request:
Compatibility Check
This pull request: