how to install wine 3.21 with both 64bit and 32bit support

Questions about Wine on macOS.
Locked
ozgen92
Level 1
Level 1
Posts: 7
Joined: Wed Dec 26, 2018 9:29 am

how to install wine 3.21 with both 64bit and 32bit support

Post by ozgen92 »

Here is the full story:

I am trying to launch a 64bit windows game on steam (only 32 bit is available for steam windows)

when I do brew install wine, it gives me 3.0.4 which had few bugs such as no connection to game server (which was said to be fixed on 3.12 on forums) and when I follow workarounds, the game launches but the screen is completely dark.

That is why I thought of using a newer version of wine, but brew install --devel wine does not work anymore.

brew install caskroom/versions/wine-devel works, and installs a graphical interface version of wine 4.x, but I think it is still running the stable version of wine with graphical extension (correct me if I am wrong). I came to that conclusion because with wine 4.x I still experienced the bugs that were said to be fixed after 3.12.

Then I decided to build wine manually to make sure I have 3.21 and manually configure it in detail. I can successfully build wine64 on my mac. However when I try running the configure file for 32 bits, I get "Cannot build a 32-bit program, you need to install 32-bit development libraries.". (https://stackoverflow.com/questions/539 ... -using-gcc)
Then I did some more reading and learned that xcode stopped supporting 32 bits and I was using gcc on /usr/bin/gcc. So I installed gcc using homebrew and have bunch of gcc's in my usr/local/bin now. I thought of using gcc-8 which only came with homebrew, but when I do that configure thinks I am cross compiling. When I pass host as an input then I get C preprocessor "gcc-8" fails sanity check errors.

I would greatly appreciate if anyone can suggest me a way to run wine on mac that supports 32 and 64 bit.
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by dimesio »

Why don't you just use the WineHQ packages? https://wiki.winehq.org/MacOS
ozgen92
Level 1
Level 1
Posts: 7
Joined: Wed Dec 26, 2018 9:29 am

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by ozgen92 »

dimesio wrote:Why don't you just use the WineHQ packages? https://wiki.winehq.org/MacOS
because latest version there is 3.0.4 which I can also install with brew. but that had an issue with graphics which I hope is solved in 3.21. I have also tried "4.0-rc3" using brew. Instead of being installed as a command in terminal, that was installed as an app (since it was in brew cask). But that had connection issues that were supposed to be solved after 3.12 according to forums (there are workarounds I did which fixed connection, but then the graphics issue showed up again). That is why I am not sure if 4.0-rc3 includes all updates from 3.21, but I think version 4 seems to be built over the stable 3.0.4 (this I am not sure, but if it is build over 3.21 that means the issues I experienced with steam were not in fact solved even in the latest versions, which I am hoping is not true)

In short the main thing I am trying to do is to install and try a version that includes the most recent fixes which also has both 32 and 64 bit support. If I also make sure that doesnt work I either file a bug or dive into debugging myself :)
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by dimesio »

ozgen92 wrote: In short the main thing I am trying to do is to install and try a version that includes the most recent fixes which also has both 32 and 64 bit support.
That would be 4.0-rc3. You could also try wine-staging, which includes experimental patches.
Gcenx
Level 6
Level 6
Posts: 709
Joined: Mon Dec 25, 2017 12:11 pm

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by Gcenx »

I keep seeing that information being posted that Steam works on 3.12 and above on macOS but that’s incorrect. Wine 3.13 would default to using Gnutls on macOS only if built with that support but Winehq builds are not built with gnutls

To build Wine on macOS is a pain, you need XCode9.4.1 and it’s Command Line Tools, from there you need to build the dylibs as the ones from homebrew are only 64Bit. To use gcc you need to have still provide it with an macOS SDK 10.13 or lower, but almost everyone just uses clang anyway even the official winehq builds use clang with a patch. If you want to add in MoltenVK support the lowest SDK you can use would be 10.11SDK.
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by dimesio »

That bug report only says the Wine packages don't ship GnuTLS. We don't ship GnuTLS, or any other dependency, in the Linux packages, either, but they are built with GnuTLS support and use libgnutls provided by the host system. If it's true that the macOS packages aren't built with GnuTLS support, the bug summary should state that.
Gcenx
Level 6
Level 6
Posts: 709
Joined: Mon Dec 25, 2017 12:11 pm

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by Gcenx »

dimesio wrote:
That bug report only says the Wine packages don't ship GnuTLS. We don't ship GnuTLS, or any other dependency, in the Linux packages, either, but they are built with GnuTLS support and use libgnutls provided by the host system. If it's true that the macOS packages aren't built with GnuTLS support, the bug summary should state that.
Guess I’m updating that after work tonight then, I have Gnutls installed and winehq builds don’t pickup or compian about the lack of Gnutls where my own compiles do complain if I don’t set dylib_fallback.

An easy way to see is unpacking a portable version and checking inside the bcrypt.dll.so with a hex editor it will show no mention of libgnutls same for secur32.dll.so



Do you know if I took the time to do a pull request updating the buildscript for macOS would it get used?
ozgen92
Level 1
Level 1
Posts: 7
Joined: Wed Dec 26, 2018 9:29 am

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by ozgen92 »

dimesio wrote:
ozgen92 wrote: In short the main thing I am trying to do is to install and try a version that includes the most recent fixes which also has both 32 and 64 bit support.
That would be 4.0-rc3. You could also try wine-staging, which includes experimental patches.
In this case I already had it installed with brew before and it was quite straightforward. Then my issue seems to be with which libraries it automatically includes.

Do you know how I can get vulkan/MoltenVK working with that?
Gcenx wrote:I keep seeing that information being posted that Steam works on 3.12 and above on macOS but that’s incorrect. Wine 3.13 would default to using Gnutls on macOS only if built with that support but Winehq builds are not built with gnutls

To build Wine on macOS is a pain, you need XCode9.4.1 and it’s Command Line Tools, from there you need to build the dylibs as the ones from homebrew are only 64Bit. To use gcc you need to have still provide it with an macOS SDK 10.13 or lower, but almost everyone just uses clang anyway even the official winehq builds use clang with a patch. If you want to add in MoltenVK support the lowest SDK you can use would be 10.11SDK.
I see, it could be that the issue I had is about Gnutls not being included in the build on mac. Since this had a manual fix it is not too critical. Is there a simpler way to include MoltenVK support if I download wine v.4.x with brew?

If not, could you roughly elaborate the process? I saw your post on and this is more or less what I am trying to do (trying to run FrostPunk on mac which needs vulkan).

So I switch to XCode9.4.1 first, then build dylib of all libraries of homebrew(?) then switch back to, say latest version of XCode and use clang to build everything? (and pass directory where I built dylibs somehow so it wont complain about 32 bit libs not being found?)
Gcenx
Level 6
Level 6
Posts: 709
Joined: Mon Dec 25, 2017 12:11 pm

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by Gcenx »

dimesio wrote:
That bug report only says the Wine packages don't ship GnuTLS. We don't ship GnuTLS, or any other dependency, in the Linux packages, either, but they are built with GnuTLS support and use libgnutls provided by the host system. If it's true that the macOS packages aren't built with GnuTLS support, the bug summary should state that.
Yeah I thought it was already updated to state that, I added some images from two copies of Bcrypt.dll.so one from a winehq build and one from a compile I did showing the lack of gnutls support at within the compile.

ozgen92 wrote:
Gcenx wrote:I keep seeing that information being posted that Steam works on 3.12 and above on macOS but that’s incorrect. Wine 3.13 would default to using Gnutls on macOS only if built with that support but Winehq builds are not built with gnutls

To build Wine on macOS is a pain, you need XCode9.4.1 and it’s Command Line Tools, from there you need to build the dylibs as the ones from homebrew are only 64Bit. To use gcc you need to have still provide it with an macOS SDK 10.13 or lower, but almost everyone just uses clang anyway even the official winehq builds use clang with a patch. If you want to add in MoltenVK support the lowest SDK you can use would be 10.11SDK.
I see, it could be that the issue I had is about Gnutls not being included in the build on mac. Since this had a manual fix it is not too critical. Is there a simpler way to include MoltenVK support if I download wine v.4.x with brew?

If not, could you roughly elaborate the process? I saw your post on and this is more or less what I am trying to do (trying to run FrostPunk on mac which needs vulkan).

So I switch to XCode9.4.1 first, then build dylib of all libraries of homebrew(?) then switch back to, say latest version of XCode and use clang to build everything? (and pass directory where I built dylibs somehow so it wont complain about 32 bit libs not being found?)
If you already frequent Portingteam I do have a link posted there for precompiled Wineskin Engines that include Gnults support and 64Bit compiles with Vulkan Support.

As for compiling Wine from source on macOS honestly don't waste your time, I stopped doing it now and instead moving to cross-compiling. These compiles I uploaded are the last ones I making on macOS as I'm unable to resolve some bugs.
ozgen92
Level 1
Level 1
Posts: 7
Joined: Wed Dec 26, 2018 9:29 am

Re: how to install wine 3.21 with both 64bit and 32bit suppo

Post by ozgen92 »

Gcenx wrote: If you already frequent Portingteam I do have a link posted there for precompiled Wineskin Engines that include Gnults support and 64Bit compiles with Vulkan Support.

As for compiling Wine from source on macOS honestly don't waste your time, I stopped doing it now and instead moving to cross-compiling. These compiles I uploaded are the last ones I making on macOS as I'm unable to resolve some bugs.
I just found your posts in Portingteam and it was very useful, thanks a lot! I set up your engine WineStagingVulkan64Bit3.21, but I am still having problems with graphics. I shared it on a new post to keep topics seperate from each other. Could you let me know if you have any ideas on how to solve this issue?
Locked