Wine
Jump to navigation
Jump to search
This page is dedicated to Wine, the implementation of Windows API under Linux, and to applications running under Wine.
Tools
- MUST HAVE — WineTricks, a quick and dirty script to easily install redistributable runtime libraries (DLL), instead of using Wine ones.
- For instance, to install VB6 Runtime:
sh winetricks vb6run
Applications
Exact Audio Copy
- v0.99 prebeta5
- Just run the installer under Wine.
- v1.0 beta 1
- Does not work out-of-the-box on Wine 1.2.x (need dev. version 1.3.11). See workaround on WineHQ:
cd .wine/drive_c/Program Files/Exact Audio Copy/
regsvr32 sql*
Internet Explorer 6
The best solution is to use the automated installer from IEs4Linux:
- First install Wine and cabextract- Careful, under Ubuntu Lucid 10.04, IEs4Linux does not work with wine1.2~1.2-0ubuntu6~lucid5. So you'll need to force the version of Wine:
sudo aptitude install wine1.2=1.1.42-0ubuntu4
sudo aptitude install cabextract
- Disable any AdBlocker proxy (or the installer will potentially fail downloading ADVAUTH.CAB)
- Download and run IEs4Linux. Use --no-gui to avoid the segmentation fault in Python:
wget http://www.tatanka.com.br/ies4linux/downloads/ies4linux-latest.tar.gz
tar zxvf ies4linux-latest.tar.gz
cd ies4linux-*
./ies4linux --no-gui
- Restore wine to its latest version (however this triggers some error dialog boxes when launching ie6 the next time):
sudo aptitude install wine1.2
- That's it! Use the desktop icon (
chmod +x ~/Desktop/ies4linux.desktop
if needed), or typeie6
in a terminal.
Status:
- (+) Rendering excellent
- (+) ASP, ActiveX works
- (?) Error while flash install, but install completes. Not tested.
- (?) JavaScript not tested
- (-) Heavy CPU load, hangs after exit — do
killall -9 iexplore wineserver
to kill the offending process) - (-) Sometimes mouse cursor disappears
- (-) Privoxy interferences. It seems that Privoxy interferes with ActiveX, ASP... even when AdBlocking is disabled!
Internet Explorer 7
- See some instructions here. The HTML rendering seems to work fine, but ASP, ActiveX, JavaScript does not work.
- Note that IEs4Linux is also working on IE7. They have a Beta available (only HTML rendering engine works).
System
USB
See USB device support in Wine - winehq.org
- How to install USB patch (for USB dongle support)
- How to install manually USB drivers
Troubleshooting
Wine doesn't run program without executable bit
Error message:
The file '/home/user/Downloads/program_name.exe' is not marked as executable.
If this was downloaded or copied form an untrusted source, it may be dangerous to run.
For more details, read about the executable bit.
Solution:
- Change permission of the program to flag it as executable
- The previous solution is not always possible if say the program is on a read-only source. If so, one can run the program with wine explicitly:
wine program_name.exe
- Or edit the launcher, and remove the cautious-launcher:
gksu gedit /usr/share/applications/wine.desktop
- Change from
Exec=cautious-launcher %f wine start /unix
- onto
Exec=wine start /unix %f
CDROM not visible/mounted in Wine
Some miscellaneous notes:
- In Linux, audio CD are not mounted on mount points. This is because they don't have any real filesystem that can be browsed. So trying to auto-detect CDROM drive with an audio CD will likely fail.
Some workarounds:
- Insert a data cd. Rune
winecfg
. This will detect the CDROM. Leave the CD in and start the wine application. When application is started, insert the audio CD. Wine application should see the new CD (see [1])
Other references:
- Another solution would be to add a mount point for the cd in /etc/fstab (pay attention to rights, etc.). Even though the audio cd is not mounted, winecfg should be able to see the cd (ref [2]). Candidate line ([3]):
/dev/sr0 /media/cd auto ro,user,noauto,unhide 0 0
Win16 apps not launching (Euroglot)
Error message:
err:module:attach_process_dlls "krnl386.exe16" failed to initialize, aborting err:module:LdrInitializeThunk Main exe initialization for L"C:\\windows\\system32\\winevdm.exe" failed, status c0000005
Solution is to enable back 16-bit segment (although might leak kernel stack address information) [4] [5].
Fix:
sudo sysctl abi.ldt16=1 # Or echo 1 > /proc/sys/abi/ldt16
To have at each boot:
echo "abi.ldt16=1" | sudo tee /etc/sysctl.d/20-wine-ldt16.conf
Miscellaneous
- Reviving Total Annihilation on Wine (Mixed-Mode CD)