Skip to content
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

vcrun2015, 2017 and 2019 are broken (ucrtbase is removed prior to running installer) #1736

Closed
gverm opened this issue Apr 5, 2021 · 5 comments · Fixed by #1738
Closed

vcrun2015, 2017 and 2019 are broken (ucrtbase is removed prior to running installer) #1736

gverm opened this issue Apr 5, 2021 · 5 comments · Fixed by #1738

Comments

@gverm
Copy link
Contributor

gverm commented Apr 5, 2021

Some change (can't seem to be able to bisect because of unrelated problems) after wine-6.5 is breaking the vcrun verbs that remove ucrtbase before running the installer.

According to Julliard (on IRC) this is to be expected with the recent loader changes, so we'll have to find another way to fix it.

I would suggest instead of removing ucrtbase, extracting it from the setup and replacing builtin before running the setup.

@austin987
Copy link
Contributor

Thanks for the report @gverm.

Do you want to attempt a fix? If not, I can, but it will likely be a week or two before I do.

If you don't have time, it would be helpful if you could include the context from IRC (I don't know that I was online at the time).

@austin987
Copy link
Contributor

FWIW, I suspect this broke more than vcrun*. When I ran the tests last night, I noticed breakage in some other apps, in particularly galliumnine (but didn't investigate, as I've noticed that 6.4/6.5 have have various breakages). I ended up using 5.0 / 6.0 instead to get a better idea of what was broken on the wine versus winetricks side.

While I have no problem fixing things on the winetricks side when needed, I don't have as much time lately for the wine side. As a result, I don't have as much time/interest investigating if regressions are wine bugs or newly intended behavior.

@gverm
Copy link
Contributor Author

gverm commented Apr 6, 2021

@austin987 I was planning on having a look at the vcrun* stuff later this week. I've pasted the IRC convo below, hopefully that helps.

As for other regressions, a lot of them were reported and fixed, some after 6.5, so 6.6 should be a better release.

gverm
With current wine-git it's not possible anymore to remove builtin ucrtbase before installing native (like winetricks does), is this to be expected? It still works with wine-6.5 and bisecting is proving to be difficult due to other issues.

julliard
gverm: if the installer depends on ucrtbase you can't remove it, yes

gverm
julliard: I'm guessing this is due to your recent loader changes and isn't going to change?

nsivov
are you sure installer uses ucrtbase itself? in other words what exactly fails?
or is it because wine is linked to it

julliard
gverm: yes, the idea is that we need to have a proper file corresponding to each loaded module

gverm
nsivov: Library ucrtbase.dll (which is needed by L"C:\windows\system32\sechost.dll") not found
I get a bunch of these.
winetricks currently removes builtin ucrtbase, because builtin has a higher version number and the installer won't overwrite it.
julliard: Thanks, good to know.

nsivov
right, so that's because with link PE modules to it, instead of msvcrt like window does
linking to msvcrt will have the same issue presumably if you wanted to install native msvcrt

@TheEssem
Copy link

TheEssem commented Aug 4, 2021

I'm using the winetricks-git package on Arch (the sha256sum shows as aac2be702936c7d9f69044a5b5b5f8fdb78303bc5e54e84e24cdaec3ffd3ad1c) as well as Wine 6.14 and I'm getting the same issue. The PR did not seem to fix it, unfortunately.

@stefson
Copy link

stefson commented Dec 17, 2021

a new snapshot is needed for a fix, this is really bad in terms of crashing peoples prefixes beyond repair

joebonrichie pushed a commit to solus-packages/winetricks that referenced this issue Aug 15, 2023
…e 6.6

Summary: Ref: Winetricks/winetricks#1736

Test Plan: Tested installing vcrun2015, vcrun2017, and vcrun2019 in new wine prefixes

Reviewers: #triage_team, DataDrake

Reviewed By: #triage_team, DataDrake

Subscribers: DataDrake

Differential Revision: https://dev.getsol.us/D10913
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants