Bug 533806 - Latest wine packages seem to break 32bit compatibility
Summary: Latest wine packages seem to break 32bit compatibility
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: wine
Version: 11
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Andreas Bierfert
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 533988 544585 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-11-09 10:35 UTC by Daniel McNamara
Modified: 2010-02-28 16:09 UTC (History)
26 users (show)

Fixed In Version: 1.1.36-1.fc12
Clone Of:
Environment:
Last Closed: 2010-02-01 01:07:09 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Daniel McNamara 2009-11-09 10:35:05 UTC
Description of problem:


Seems that the 1.1.32-1 update has broken 32 compatibility by building a wow64 requirement into wine32 - which makes next to no sense.

Version-Release number of selected component (if applicable):

wine-1.1.32-1 and related wine packages

How reproducible:

Everytime


Steps to Reproduce:

1. Attempt to run any 32bit application using wine32
2. Attempt will fail with a message saying the .wine directory "is a 32-bit prefix, it cannot be used with wow64 Wine."
3. Sad face at unable to start favourite game
  
Actual results:

Executing any 32bit app will cause this. Including wincfg

[testuser@testmachine ~]$ wine32 wincfg
wine: '/home/dawnstar/.wine' is a 32-bit prefix, it cannot be used with wow64 Wine.


Expected results: wine32 actually runs 32bit applications


Additional info:

This does not seem to be the fault of the fedora package but rather an upstream change although I can not for the life of me tell where this is yet.

Any help in finding what this bug is and fixing it would be most appreciated.

Comment 1 Andreas Bierfert 2009-11-09 14:58:54 UTC
I can not reproduce this here with 1.1.32 (or other wine versions below). Could you please post which wine packages you have installed and see what happens if you start from a clean ~/.wine ?

Comment 2 Denis Tumpic 2009-11-09 15:22:10 UTC
I can reproduce this on my AMD 64 platform.

What I need to do when the above happens is the following:

[d@t FA]$ wine My.exe  <<< Fails
wine: '/home/d/.wine' is a 32-bit prefix, it cannot be used with wow64 Wine.
[d@t FA]$ wine64 My.exe <<< Fails
err:winedevice:ServiceMain driver L"Aspi32" failed to load
err:winedevice:ServiceMain driver L"zntport" failed to load
Trying to load PE image for unsupported architecture (I386)
Trying to load PE image for unsupported architecture (I386)
[d@t FA]$ wine My.exe <<< Works again

Comment 3 Andreas Bierfert 2009-11-09 15:29:51 UTC
Could you please try by using winecfg as

wine32 winecfg
and
wine64 winecfg

and for your example exchanging 'wine My.exe' by 'wine32 My.exe'.

Comment 4 Denis Tumpic 2009-11-09 16:10:44 UTC
[d@t FA]$ wine32 winecfg
wine: '/home/d/.wine' is a 32-bit prefix, it cannot be used with wow64 Wine.
[d@t FA]$ wine64 winecfg
err:winedevice:ServiceMain driver L"Aspi32" failed to load
err:winedevice:ServiceMain driver L"zntport" failed to load
[d@t FA]$ wine32 My.exe  <<< Works again

Comment 5 Daniel McNamara 2009-11-09 21:08:22 UTC
#Package listing - yum tells me there are no available updates for any listed

[testuser@testmachine ~]$ rpm -qa |grep wine
wine-pulseaudio-1.1.32-1.fc11.i586
wine-ldap-1.1.32-1.fc11.x86_64
wine-1.1.32-1.fc11.x86_64
wine-cms-1.1.32-1.fc11.x86_64
wine-core-1.1.32-1.fc11.i586
wine-desktop-1.1.32-1.fc11.noarch
wine-capi-1.1.32-1.fc11.i586
wine-capi-1.1.32-1.fc11.x86_64
wine-1.1.32-1.fc11.i586
wine-twain-1.1.32-1.fc11.x86_64
wine-common-1.1.32-1.fc11.noarch
wine-pulseaudio-1.1.32-1.fc11.x86_64
wine-ldap-1.1.32-1.fc11.i586
wine-core-1.1.32-1.fc11.x86_64
wine-twain-1.1.32-1.fc11.i586
wine-fonts-1.1.32-1.fc11.noarch
wine-cms-1.1.32-1.fc11.i586

# Ok lets try and fire it up

[testuser@testmachine ~]$ wine32 wincfg
wine: '/home/testuser/.wine' is a 32-bit prefix, it cannot be used with wow64 Wine.

# The expected fail. Moving .wine to new folder to recreate a new one

testuser@testmachine ~]$ mv .wine/ wine-backup

# Ok lets try it now

[testuser@testmachine ~]$ wine32 wincfg
wine: created the configuration directory '/home/testuser/.wine'
Could not load wine-gecko. HTML rendering will be disabled.
wine: configuration in '/home/testuser/.wine' has been updated.
wine: could not loadL"C:\\windows\\system32\\wincfg.exe": Module not found

# new .wine created as expected but it's looking for drive_c - no problem lets link the previous one as I really don't want to have to reinstall all the apps again

[testuser@testmachine ~]$ cd .wine/
[testuser@testmachine .wine]$ ln -s ../wine-backup/drive_c/ drive_c

# Lets fire it up again

[testuser@testmachine .wine]$ cd ..
[testuser@testmachine ~]$ wine32 wincfg
wine: '/home/testuser/.wine' is a 32-bit prefix, it cannot be used with wow64 Wine.

# Still fails. Sod. Please do not tell me I need to recreate the entirety of drive_c

Comment 6 Daniel McNamara 2009-11-09 21:38:55 UTC
Using a brand new fresh .wine dir with it's default drive_c I can run both

wine32 winefcfg
wine64 winecfg

However this still does not explain how the drive_c and it's apps which were working just fine prior to this package update now fail with this message

Comment 7 Daniel McNamara 2009-11-09 21:44:23 UTC
Another test with the default created drive_c rather than my previous one and attempting to start the provided iexplore.exe with wine32

[testuser@testmachine ~]$   /usr/bin/wine32 "C:\Program Files\Internet Explorer\iexplore.exe" 
wine: '/home/testuser/.wine' is a 32-bit prefix, it cannot be used with wow64 Wine.


This you should be able to recreate

Comment 8 Andreas Bierfert 2009-11-10 15:21:53 UTC
*** Bug 533988 has been marked as a duplicate of this bug. ***

Comment 9 Arthur Pemberton 2009-11-10 20:19:18 UTC
My wine is broken as well, I have to `rm -rf ~/.wine` after every use.

Comment 10 Need Real Name 2009-11-11 05:39:54 UTC
Would it be helpful to suggest that part of the wine testing process for Fedora should involve running 32-bit windows applications on an x86_64 system?

I mean, this is pretty bad ... certainly the practice is to do some testing before pushing packages to updates?  I'm sure there are folks who enjoy using Fedora to run windows applications as part of their daily routine, and this has left them dead in the water.

Comment 11 Need Real Name 2009-11-11 06:00:25 UTC
By the way, I've found that the least disruptive way to work around this problem is to 
  rm -rf ~/.wine/drive_c/windows/syswow64
and then run the wine application.  Unfortunately, this has to be done every time you want to run something, unless another wine app is already running ...

Your mileage may vary.

Comment 12 Need Real Name 2009-11-11 06:12:40 UTC
update: it looks like this may fix things more durably than I first thought.  I was just able to do the following:

1) run wine app, get 'wine: '/home/testuser/.wine' is a 32-bit prefix ..." error
2) verify all wine processes have been killed
3) rm -rf ~/.wine/drive_c/windows/syswow64
4) re-run wine app
5) works
6) quit wine app
7) verify all wine processes have been killed
8) re-run wine app
9) works!!

Comment 13 Michael Nunez 2009-11-19 20:40:49 UTC
i have been able to run programs successfully on wine if i used the 'wineboot' command first. then 'wine32 iexplorer.exe' for example.

bad thing about it is, ill get a random crash and forced to hard reset my system.

~hope this helps.

Comment 14 Denis Tumpic 2009-11-19 23:24:13 UTC
This happens in F12 too. Best way so far to get rid of this nuisance is to

rm /usr/bin/wine
cp -raf /usr/bin/wine32 /usr/bin/wine
rm -rf .wine/drive_c/windows/syswow64

this will make it possible to start winecfg and all like "normal"

Comment 15 Andreas Bierfert 2009-11-26 20:03:46 UTC
Here is a scratch build of wine patched to use ${HOME}/.wine-x86_64 as default wineprefix for 64bit wine. Feedback is welcome.

https://koji.fedoraproject.org/koji/taskinfo?taskID=1826317

Comment 16 Andreas Bierfert 2009-12-05 18:44:40 UTC
*** Bug 544585 has been marked as a duplicate of this bug. ***

Comment 17 HaJo Schatz 2009-12-13 01:50:51 UTC
Just came across the same issue in F11. I seem to have solved the issue without ever touching ~/.wine. Here's how:
- Remove _all_ wine packages from system
- Install _only_ the i586 arch of the wine meta-package, it will pull in the other required i586 packages only

Then, my old 32bit-apps run while I still see the ~/.wine/drive_c/windows/syswow64 dir with contents.

Seems to me the problem actually stems from package management. At one point, wine was split into 32/64 bits, both made it into the repo and yum diligently pulled in both versions. Also note here that a simple "remove" of the 64bit version doesn't seem to solve the issue. One must remove all the wine completely, then re-install the i586

Comment 18 Gianluca Cecchi 2009-12-13 11:18:42 UTC
you are a great, Hajo!

Comment 19 Fedora Update System 2009-12-22 05:00:12 UTC
wine-1.1.35-1.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update wine'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F12/FEDORA-2009-13529

Comment 20 Fedora Update System 2010-01-20 06:56:36 UTC
wine-1.1.36-1.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/wine-1.1.36-1.fc12

Comment 21 Fedora Update System 2010-01-21 00:05:23 UTC
wine-1.1.36-1.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update wine'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F12/FEDORA-2010-0819

Comment 22 Elad Alfassa 2010-01-23 09:58:13 UTC
Compiling a win64 build of wine for x86_64 isn't a good thing. the problem is that you can compile wine to run 32bit code on x86_64, and it'll use 64bit libs and all those things. the i686 build uses the 32bit libs. so i think that we should split wine to x86_64 wine32 (run 32bit code) build and x86_64 wine64 (runs 32bits code only) build.
Or we can just remove the flag --enable-win64, as running 64bit windows apps usually isn't needed (most of the windows apps are 32bit).

Comment 23 Elad Alfassa 2010-01-23 13:19:53 UTC
In addition to my previous comment, I've checked that few minutes ago - wine 1.1.32 was compiled in fedora as a wow64 wine. wow64 wine can run both 32bit and 64bit apps. Can you build wine 1.1.36 with wow64?

Comment 24 Fedora Update System 2010-02-01 01:06:39 UTC
wine-1.1.36-1.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 25 Owen Carter 2010-02-18 13:57:51 UTC
Still broken for menu shortcuts.
I'm on a 64 bit F12 system, with wine.x86_64 1.1.36-1.fc12 installed, this is a new PC, F12 installed last week.

I can successfully run a 32bit application ('remedy', uurgh, horrible app but it runs well in wine at least) via the command line:

wine /home/myuzer/.wine/drive_c/Program\ Files/AR\ System/User/aruser.exe

But...  the launcher installed in the gnome menus is broken, and (silently) fails. When I copied the actual command from the launcher to the command line to see the error I see that it fails with the same error as this issue.

[myuzer@amman ~]$ env WINEPREFIX="/home/myuzer/.wine" wine "C:\Program Files\AR System\User\aruser.exe" 
wine: '/home/myuzer/.wine' is a 32-bit prefix, it cannot be used with 64-bit Wine.

Shoudl I put this in a new PR?


Note You need to log in before you can comment on or make changes to this bug.