IE 7 on Linux

When I'm making a web page at home on my laptop (a Linux machine), I test it on Firefox and IE 7. (I only test on IE7 now, because it will be distributed to Windows users as a high-priority update.) Unfortunately, IE 7 will not install under Wine, which is annoying because that's how I run Windows programs on my Linux machine. However, there is a way to get the layout engine of IE 7 working under Wine -- and that's all I need.

Problem
IE7 will not install under Wine, the popular Windows compatibility layer that allows many Windows programs to run on Linux.
Solution

Install standalone IE6 and replace its rendering and layout libraries with those of IE7.

  1. Install IE6 using IEs4Linux [download]. You will not need the cabextract utility.
  2. Download IE7 for Windows XP (IE7-WindowsXP-x86-enu.exe) from the Microsoft IE downloads page.
  3. Move IE7-WindowsXP-x86-enu.exe to a new, empty folder (soon to be filled with DLL files) and run "wine IE7-WindowsXP-x86-enu.exe /x" to extract it.
  4. Copy the following files to ~/.ies4linux/ie6/drive_c/windows/system: wininet.dll, iertutil.dll, shlwapi.dll, urlmon.dll, jscript.dll, vbscript.dll, mshtml.dll, mshtmled.dll, mshtmler.dll, advpack.dll, inetcpl.cpl
  5. Grab normaliz.dll from dll-files.com and inetcplc.dll from dlldump.com and put them in that folder as well.
  6. Run WINEPREFIX=~/.ies4linux/ie6 winecfg and set the IE6 default environment to Windows XP

To run this Frankenstein's Monster of IE 6/7, run the command ~/bin/ie6.

Known failures
  • GIF images render as black rectangles
  • The user interface is that of IE 6, not IE 7
  • Conditional comments may not work properly
Explanation
By copying over the rendering libraries from IE7 to IE6, we can simulate the layout behavior of IE7 while still running the program under Wine. Wine is under beta development, and will continue to be for as long as Microsoft continues to develop Windows.
Resources

Responses: One so far

  1. h says:

    thank you! It works :)