post icon

Instalar aplicaciones del framework dotnet sobre GNU/Linux con Wine

Es cierto que si queremos usar un sistema operativo, sea cual fuere, siempre es mejor instalar aplicaciones nativas del mismo o en los mejores casos los que son multiplataforma pero con soporte nativo también. Pero muchas veces nos vemos forzados debido a su alta popularidad a ejecutar aplicaciones de MS Windows sobre algun otro SO, ya sea GNU/Linux o BSD.

Normalmente si son aplicaciones win32 con instalar wine ya es suficiente para su ejecución, pero que sucede si fue escrito el programa con algún lenguaje dotnet? Si ejecutamos el instalador del framework con wine, este mismo genera un montón de errores por los que no se pueden intalar asi como así nada mas.

La manera mas sencilla de hacerlo es con la ayuda de winetricks 😀 (recordad tener instalado previamente la ultima version de wine). Para obtenerlo desde la linea de comandos de nuestro terminal debemos ejecutar lo siguiente:

1
wget http://www.kegel.com/wine/winetricks

Esto no solo nos permitirá instalar el framework 2 y 3 de dotnet, sino otros tantos componentes que podríamos llegar a necesitar, así como directX 9, gdiplus, msi2 entre los mas importantes. Ahora que tenemos ya winetricks, podemos instalar de 2 maneras los componentes, una por linea de comandos, ejemplo:

1
sh winetricks dotnet11 dotnet20 dotnet20sp2 dotnet30 msi2 msxml4

La lista de posibilidades a la fecha 2010/02/01 es la siguiente:

Usage: /usr/bin/winetricks [options] package [package] ...
This script can help you prepare your system for Windows applications
that mistakenly assume all users' systems have all the needed
redistributable runtime libraries or fonts.
Some options require the Linux 'cabextract' program.
Options:
 -q         quiet.  You must have already agreed to the EULAs.
 -v         verbose
 -V         display Version
Packages:
 art2kmin      MS Access 2007 runtime
 atmlib        Adobe Type Manager. Needed for Adobe CS4
 autohotkey    Autohotkey (open source gui scripting language)
 cmake         CMake, the cross-platform, open-source build system
 colorprofile  Standard RGB color profile
 comctl32      MS common controls 5.80
 comctl32.ocx  MS comctl32.ocx and mscomctl.ocx, comctl32 wrappers for VB6
 controlpad    MS ActiveX Control Pad
 corefonts     MS Arial, Courier, Times fonts
 cygwin        Unix apps for Windows (needed by some build scripts)
 d3dx9         MS d3dx9_??.dll (from DirectX 9 user redistributable)
 d3dx10        MS d3dx10_??.dll (from DirectX user redistributable)
 dcom98        MS DCOM (ole32, oleaut32); requires Windows 98 license, but does not check for one
 dinput8       MS dinput8.dll (from DirectX 9 user redistributable)
 dirac0.8      the obsolete Dirac 0.8 directshow filter
 directplay    MS DirectPlay (from DirectX 9 user redistributable)
 directx9      MS DirectX 9 user redistributable (not recommended! use d3dx9 instead)
 directx9-beta MS DirectX 9 user redistributable - beta verb (not recommended! use d3dx9 instead)
 divx          divx video codec
 dotnet11      MS .NET 1.1 (requires Windows license, but does not check for one)
 dotnet20      MS .NET 2.0 (requires Windows license, but does not check for one)
 dotnet20sp2   MS .NET 2.0 sp2 (requires Windows license, but does not check for one)
 dotnet30      MS .NET 3.0 (requires Windows license, but does not check for one, might not work yet)
 droid         Droid fonts (on LCD, looks better with fontsmooth-rgb)
 ffdshow       ffdshow video codecs
 firefox       Firefox web browser
 flash         Adobe Flash Player ActiveX and firefox plugins
 fm20          MS Forms 2.0 Object Library
 fontfix       Fix bad fonts which cause crash in some apps (e.g. .net).
 fontsmooth-bgr        Enables subpixel smoothing for BGR LCDs
 fontsmooth-disable    Disables font smoothing
 fontsmooth-gray       Enables grayscale font smoothing
 fontsmooth-rgb        Enables subpixel smoothing for RGB LCDs
 gdiplus       MS gdiplus.dll
 gecko-dbg     The HTML rendering Engine (Mozilla), with debugging symbols
 gecko         The HTML rendering Engine (Mozilla)
 hosts         Adds empty C:\windows\system32\drivers\etc\{hosts,services} files
 icodecs       Intel Codecs (Indeo)
 ie6           Microsoft Internet Explorer 6.0
 ie7           Microsoft Internet Explorer 7.0
 jet40         MS Jet 4.0 Service Pack 8
 kde           KDE for Windows installer
 liberation    Red Hat Liberation fonts (Sans, Serif, Mono)
 mdac25        MS MDAC 2.5: Microsoft ODBC drivers, etc.
 mdac27        MS MDAC 2.7
 mdac28        MS MDAC 2.8
 mfc40         MS mfc40 (Microsoft Foundation Classes from Visual C++ 4)
 mfc42         MS mfc42 (same as vcrun6 below)
 mingw-gdb     GDB for MinGW
 mingw         Minimalist GNU for Windows, including GCC for Windows!
 mono20        mono-2.0.1
 mono22        mono-2.2
 mono24        mono-2.4
 mozillabuild  Mozilla build environment
 mpc           Media Player Classic
 mshflxgd      MS Hierarchical Flex Grid Control
 msi2          MS Installer 2.0
 msls31        MS Line Services 3.1 (needed by native riched?)
 msmask        MS Masked Edit Control
 mspaint       MS Paint (gotta draw stick figures somehow...)
 msscript      MS Script Control
 msxml3        MS XML version 3
 msxml4        MS XML version 4
 msxml6        MS XML version 6
 ogg           ogg filters/codecs: flac, theora, speex, vorbis, schroedinger
 ole2          MS 16 bit OLE
 openwatcom    Open Watcom C/C++ compiler (can compile win16 code!)
 pdh           MS pdh.dll (Performance Data Helper)
 physx         NVIDIA/AGEIA PhysX runtime
 psdk2003      MS Platform SDK 2003
 psdkvista     MS Vista SDK (does not install yet)
 psdkwin7      MS Windows 7 SDK (installing just headers and c++ compiler works)
 python26      Python 2.6.2 (and pywin32)
 python-comtypes Python 0.6.1-1 comtypes package
 quicktime72   Apple Quicktime 7.2
 riched20      MS riched20 and riched32
 riched30      MS riched30
 richtx32      MS Rich TextBox Control 6.0
 shockwave     Adobe Shockwave Player
 tahoma        MS Tahoma font (not part of corefonts)
 urlmon        MS urlmon.dll
 usp10         MS usp10.dll (Uniscribe)
 vb2run        MS Visual Basic 2 runtime
 vb3run        MS Visual Basic 3 runtime
 vb4run        MS Visual Basic 4 runtime
 vb5run        MS Visual Basic 5 runtime
 vb6run        MS Visual Basic 6 Service Pack 6 runtime
 vc2005express MS Visual C++ 2005 Express
 vc2005expresssp1 MS Visual C++ 2005 Express SP1 (does not work yet)
 vc2005sp1     MS Visual C++ 2005 Service Pack 1 and ATL fix (install trial 1st)
 vc2005hotfix  MS Visual C++ 2005 hotfixes (install sp1 1st)
 vc2005trial   MS Visual C++ 2005 Trial
 vcrun2003     MS Visual C++ 2003 libraries (mfc71,msvcp71,msvcr71)
 vcrun2005     MS Visual C++ 2005 sp1 libraries (mfc80,msvcp80,msvcr80)
 vcrun2008     MS Visual C++ 2008 libraries (mfc90,msvcp90,msvcr90)
 vcrun6        MS Visual C++ 6 sp4 libraries (mfc42, msvcp60, msvcrt)
 vcrun6sp6     MS Visual C++ 6 sp6 libraries (mfc42, msvcp60, msvcrt; 64 MB download)
 vjrun20       MS Visual J# 2.0 SE libraries (requires dotnet20)
 vlc           VLC media player
 wenquanyi     WenQuanYi CJK font (on LCD looks better with fontsmooth-rgb)
 wininet       MS wininet.dll (requires Windows license, but does not check for one)
 wme9          MS Windows Media Encoder 9 (requires Windows license, but does not check for one)
 wmp10         MS Windows Media Player 10 (requires Windows license, but does not check for one)
 wmp9          MS Windows Media Player 9 (requires Windows license, but does not check for one)
 wsh56js       MS Windows scripting 5.6, jscript only, no cscript
 wsh56         MS Windows Scripting Host 5.6
 wsh56vb       MS Windows scripting 5.6, vbscript only, no cscript
 xact          MS XACT Engine (x3daudio?_?.dll, xactengine?_?.dll)
 xvid          xvid video codec
Pseudopackages:
 allfonts      All listed fonts (corefonts, tahoma, liberation)
 allcodecs     All listed codecs (xvid, ffdshow, icodecs)
 ddr=gdi       Set DirectDrawRenderer to GDI (default)
 ddr=opengl    Set DirectDrawRenderer to OpenGL
 fakeie6       Set registry to claim IE6sp1 is installed
 glsl-disable  Disable GLSL use by Wine Direct3D
 glsl-enable   Enable GLSL use by Wine Direct3D (default)
 heapcheck     Enable heap checking
 multisampling=enabled  Enable Direct3D multisampling
 multisampling=disabled Disable Direct3D multisampling (default)
 native_mdac   Override odbc32, odbccp32 and oledb32
 native_oleaut32 Override oleaut32
 nocrashdialog Disable the graphical crash dialog
 orm=backbuffer Registry tweak: OffscreenRenderingMode=backbuffer
 orm=fbo        Registry tweak: OffscreenRenderingMode=fbo (default)
 orm=pbuffer    Registry tweak: OffscreenRenderingMode=pbuffer
 rtlm=auto      Set RenderTargetLockMode to auto (default)
 rtlm=disabled  Set RenderTargetLockMode to disabled
 rtlm=readdraw  Set RenderTargetLockMode to readdraw
 rtlm=readtex   Set RenderTargetLockMode to readtex
 rtlm=texdraw   Set RenderTargetLockMode to texdraw
 rtlm=textex    Set RenderTargetLockMode to textex
 sandbox       Sandbox the wineprefix - remove links to ~
 sound=alsa       Set sound driver to ALSA
 sound=audioio    Set sound driver to AudioIO
 sound=coreaudio  Set sound driver to CoreAudio
 sound=esound     Set sound driver to Esound
 sound=jack       Set sound driver to Jack
 sound=nas        Set sound driver to Nas
 sound=oss        Set sound driver to OSS
 sound=disabled   Disable sound
 nt40          Set windows version to nt40
 win98         Set windows version to Windows 98
 win2k         Set windows version to Windows 2000
 winxp         Set windows version to Windows XP
 vista         Set windows version to Windows Vista
 winver=       Set windows version to default (winxp)
 volnum        Rename drive_c to harddiskvolume0 (needed by some installers)

La otra manera es de forma grafica, normalmente mas sencilla, ejecutamos la siguiente linea y veremos esta pantalla

1
sh winetricks

Comentarios desde Facebook:

  1. avatar
    anton SPAIN Mozilla Firefox Ubuntu Linux
    9 julio 2014 at 18:16 #

    funciona

Responder