-
Notifications
You must be signed in to change notification settings - Fork 6.6k
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
[v8] Build failure in x64-windows (likely broken by PR #24066) #24510
Comments
cc @Kwizatz |
cc @bold84 |
If this is not solved soonish, wouldn't it make sense to revert the PR that broke V8? As a reminder, that one: #24066 |
The update to the new v8 version was necessary because the old version wasn't compatible with the new gn. I wasn't aware of such issues with v8 at that time. @hugoam @JackBoosY |
I'm sorry, it's my mistake and I didn't actually want it to sound that way. We can use the parent commit, that's how we're currently doing, but our usage of vcpkg is not automated or versioned so we have little control over the fact that someone might get the wrong vcpkg version and lose time trying to figure out why it's not working. |
Hi, so, last time I updated v8 I came across some reluctance to let the patches in, there was a heated discussion on whether a fix upstream was or wasn't the "correct" fix for an issue that was present on the version I was updating to, but already fixed on upstream/master. In the end I had to wait for the version that had the fix to become the current stable at the time and only then update. I was asked to push the patches upstream rather than keeping them here, which I thought made sense, but I expected the chrome developers to show little interest in the patches... and so they did. forward to a couple of weeks back, I tried updating the patches and posted them upstream, but I need to start a discussion with the chrome developers on why they would be interested in merging the patches, honestly, I am pessimistic, the reasoning being that they would have to set up a CI environment to check that the patches don't break, even though there is one already set up here... Anyway, I digress, here are the patches for v8 master branch a couple of weeks old, the size of the patches I think has come down, and they may work with the latest stable version, you may want to see if they work for you and you'll be doing me a big favor by uploading a PR here 😁 Chromium BUILD Also, if a mayor project or port is making use of the v8 port I contributed it would really help if they pushed upstream to merge the patches. |
Hi @JackBoosY So I am working on this but found that the python3 package downloaded by vcpkg_find_acquire_program(PYTHON3) does not contain a python3 symlink to python.exe, as such, GN does not find python3. Should I file an Issue? Thanks! |
|
I added a workaround, copy the python.exe as python3.exe over the buildtrees directory, so it may not be necessary. It would be good to have the vcpkg_find_acquire_program function make the copy at the extraction location, but really the embeddable package should contain the executable/symlink to begin with. |
No no, please don't do that. |
Ok, its just that I think that the issue here is at the Python package, in other words, its an oversight at how python.org creates their embeddable bundle. |
Cloning into 'build'... |
ERROR at //build/config/win/BUILD.gn:299:27: Script returned non-zero exit code. |
I meet the same problem with latest vcpkg. How to make it? |
cc @LilyWangLL |
For anyone who might come across this issue in future, just as I did, this is a fix |
Thanks, this was really helpful. Had to run with Is the v8 package support not maintained? Seems like this has been a known issue for almost a year, and the commit referenced by @piusayowale is from Sept 2021. |
Unfortunatelly no it is not being mantained. The last unmerged update I did had a clash with the Windows SDK version installed on the CI servers, the build requieres a specific version which is not the latest and does not match the versions on the VCPKG side. That was pretty much it, it did build on my system, but without the tests passing it just couldn't be merged. If anyone is interested the commits are on this branch: https://github.com/Kwizatz/vcpkg/tree/v8 Anyway, later things just got worse, I wasn't just keeping the VCPKG version up to date but the msys2 version as well as keeping it building on Linux using gcc, but gcc 12 and 13 has broken a lot of things, both compatibility with clang flags as well as some bugs on false positives and a broken idiom when mixing gcc attribute() with C++ [[attribute]]. So, in short, at the moment there's too many things that need to be fixed outside of my reach, and even when everything settles who knows how long before it all breaks all over again. Upstream had no interest in accepting the patches in part because these issues would mean having someone keeping track and supporting yet another compiler 🤷♂️. |
This is an automated message. Per our repo policy, stale issues get closed if there has been no activity in the past 180 days. The issue will be automatically closed in 14 days. If you wish to keep this issue open, please add a new comment. |
Host Environment
To Reproduce
Steps to reproduce the behavior:
./vcpkg install v8
(with default triplet set to x64-windows)Failure logs
This will produce an error logged to
vcpkg\buildtrees\v8\generate-x64-windows-dbg-out.log
which looks like the following:Additional context
It seems this is broken by PR #24066 (I'm currently building the parent commit 2ac61f8 and it seems fine so far)
Another project has faced a similar issue: envoyproxy/envoy#18365
It seems tied to the recent update of GN, while V8 itself hasn't been updated, and the fix is apparently included in a later V8 commit v8/v8@eac21d5 (https://chromium.googlesource.com/v8/v8.git/+/eac21d572e92a82f5656379bc90f8ecf1ff884fc)
I've tried to fix the port with the following approaches:
eac21d572e92a82f5656379bc90f8ecf1ff884fc
, but this causes too many issues that I don't know how to address, andThe text was updated successfully, but these errors were encountered: