Cannot install .NET Framework 4 in CentOS

Questions about Wine on Linux
Locked
kevwcy
Level 1
Level 1
Posts: 9
Joined: Mon Sep 09, 2013 3:22 am

Cannot install .NET Framework 4 in CentOS

Post by kevwcy »

Hi guys,

I wanted to install .NET Framework 4 in CentOS 6.4 running 64 bit.

However when I entered the command " winetricks dotnet40" it shows "WINE is wine,which is neither on the path nor an executable file"

If I install by "wine64 dotNetFx40_x86_x64.exe" there is no response and in Wine Explorer it shows "Internal Error".


So any solutions on them? :(
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: Cannot install .NET Framework 4 in CentOS

Post by dimesio »

What happens when you run wine's builtin apps (winecfg, notepad, regedit)?
kevwcy
Level 1
Level 1
Posts: 9
Joined: Mon Sep 09, 2013 3:22 am

Re: Cannot install .NET Framework 4 in CentOS

Post by kevwcy »

When I just press winecfg, it showed " exec: wine: not found"

But if run winecfg, notepad,regedit with wine64 before, the apps can be run successfully.
dimesio wrote:What happens when you run wine's builtin apps (winecfg, notepad, regedit)?
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: Cannot install .NET Framework 4 in CentOS

Post by dimesio »

It sounds like you only have 64 bit Wine installed. You need a shared WoW64 setup. Where did you get Wine from? If this was a binary package, it should have pulled in the necessary 32 bit parts as a dependency, and you should report the problem to the package maintainer. If you built Wine yourself, follow the instructions in the wiki for building a shared WoW64 setup: http://wiki.winehq.org/Wine64.
kevwcy
Level 1
Level 1
Posts: 9
Joined: Mon Sep 09, 2013 3:22 am

Re: Cannot install .NET Framework 4 in CentOS

Post by kevwcy »

Just an update

I can use winetricks dotnet40 now but now the following message appear:


load_dotnet40
------------------------------------------------------
dotnet40 does not yet fully work or install on wine. Caveat emptor.
------------------------------------------------------
Current wine does not have wine bug 30707, so not applying workaround
Executing w_do_call remove_mono
Executing load_remove_mono
------------------------------------------------------
Mono does not appear to be installed.
------------------------------------------------------
DELETE - HKLM\Software\Microsoft\NET Framework Setup\NDP\v4 (null) 0 0 1
The operation completed successfully
Executing rm -f /root/.wine/dosdevices/c:/windows/system32/mscoree.dll
Using native override for following DLLs: mscoree
Executing winetricks_early_wine regedit C:\windows\Temp\_dotnet40\override-dll.reg
ADD - HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full Install 0 REG_DWORD 0001 1
The operation completed successfully
ADD - HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full Version 0 REG_SZ 4.0.30319 1
The operation completed successfully
Current wine does not have wine bug 30707, so not applying workaround
------------------------------------------------------
dotnet40 install completed, but installed file /root/.wine/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found




In fact, it seems that .NET 4.0 is not installed properly...
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: Cannot install .NET Framework 4 in CentOS

Post by dimesio »

kevwcy wrote: dotnet40 install completed, but installed file /root/.wine/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found
Never run Wine as root. http://wiki.winehq.org/FAQ#run_as_root
kevwcy
Level 1
Level 1
Posts: 9
Joined: Mon Sep 09, 2013 3:22 am

Re: Cannot install .NET Framework 4 in CentOS

Post by kevwcy »

dimesio wrote:
kevwcy wrote: dotnet40 install completed, but installed file /root/.wine/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/ngen.exe not found
Never run Wine as root. http://wiki.winehq.org/FAQ#run_as_root

Alright, now I have started all over again,using Wine 1.4.1 as default and an account which is not root.

I started to use winetricks dotnet40 or wine DotNetFx40_x86_x64.exe , but after extracting files it kept on showing "Same or higher version of .NET Framework has already been installed on this computer".


I have tried to install under clean 32-bit prefix by WINEARCH=win32 winetricks dotnet40 or even delete .wine folder and the execute " WINEARCH=win32 WINPREFIX=~/.wine winecfg" for setup. Also delete registries etc.....




Any idea on that and Thanks a lot.




p.s. the command window showed the following:


load_dotnet40
------------------------------------------------------
dotnet40 does not yet fully work or install on wine. Caveat emptor.
------------------------------------------------------
------------------------------------------------------
Working around wine bug 30707 -- Need to get gacutil.exe
------------------------------------------------------
Executing w_do_call remove_mono
Executing load_remove_mono
------------------------------------------------------
Mono does not appear to be installed.
------------------------------------------------------
DELETE - HKLM\Software\Microsoft\NET Framework Setup\NDP\v4 (null) 0 0 1
The operation completed successfully
Executing rm -f /home/kevin/.wine/dosdevices/c:/windows/system32/mscoree.dll
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:process:SetProcessDEPPolicy (3): stub
fixme:clusapi:OpenCluster ((null)) stub!
fixme:clusapi:ClusterOpenEnum (0xdeadbeef, 4) stub!
fixme:clusapi:ClusterEnum (0xdeadbeef, 0, 0x32f860, 0x124d30, 261) stub!
fixme:clusapi:ClusterCloseEnum (0xdeadbeef) stub!
fixme:clusapi:CloseCluster (0xdeadbeef) stub!
fixme:advapi:DecryptFileW L"C:\\147c97c36b7058b1573a44a47a\\" 00000000
fixme:advapi:RegisterTraceGuidsW (0x6cd15f38, 0x6cd20180, {e2821408-c59d-418f-ad3f-aa4e792aeb79}, 1, 0x33fc90, (null), (null), 0x6cd20188,): stub
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:process:SetProcessDEPPolicy (1): stub
fixme:heap:HeapSetInformation (nil) 1 (nil) 0
fixme:advapi:LsaOpenPolicy ((null),0x33f474,0x00000001,0x33f49c) stub
fixme:advapi:LsaClose (0xcafe) stub
fixme:msxml:domdoc_putref_schemas (0x16ab50)->({VT_DISPATCH: 0x78df18}): semi-stub
fixme:msxml:domdoc_get_readyState stub! (0x16ab50)->(0x33f3a0)
fixme:advapi:LsaOpenPolicy ((null),0x33f2c0,0x00000001,0x33f2e8) stub
fixme:advapi:LsaClose (0xcafe) stub
Using native override for following DLLs: mscoree
Executing winetricks_early_wine regedit C:\windows\Temp\_dotnet40\override-dll.reg
ADD - HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full Install 0 REG_DWORD 0001 1
The operation completed successfully
ADD - HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full Version 0 REG_SZ 4.0.30319 1
The operation completed successfully
------------------------------------------------------
Working around wine bug 30707 -- Manually registering assemblies
------------------------------------------------------
gacutil.exe
gacutil.exe.config
err:module:import_dll Library mscoree.dll (which is needed by L"C:\\windows\\temp\\_dotnet40\\gacutil.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"C:\\windows\\temp\\_dotnet40\\gacutil.exe" failed, status c0000135
err:module:import_dll Library mscoree.dll (which is needed by L"C:\\windows\\temp\\_dotnet40\\gacutil.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"C:\\windows\\temp\\_dotnet40\\gacutil.exe" failed, status c0000135
cp: cannot stat `/home/kevin/.wine/dosdevices/c:/windows/Microsoft.NET/Framework/v4.0.30319/System.EnterpriseServices.dll': No such file or directory
------------------------------------------------------
Note: command 'load_dotnet40' returned status 1. Aborting.
------------------------------------------------------
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: Cannot install .NET Framework 4 in CentOS

Post by dimesio »

kevwcy wrote: using Wine 1.4.1 as default
That version is old and no longer supported. Upgrade to 1.6 or later, and also make sure you have the latest winetricks from http://winetricks.googlecode.com/svn/tr ... winetricks. Then delete the wineprefix and create a new 32 bit one with

Code: Select all

WINEARCH=win32 winecfg
and install winetricks dotnet40 to that.
kevwcy
Level 1
Level 1
Posts: 9
Joined: Mon Sep 09, 2013 3:22 am

Re: Cannot install .NET Framework 4 in CentOS

Post by kevwcy »

I have got more question with it...

1. Since I cannot execute yum --enablerepo=updates-testing upgrade wine , i download the package through wget, unzip it and install by

./configure --enable-win64 (Force to run it otherwise cannot continue)
make
make install

WINE is now 1.6
However when I pressed wine --version it still in 1.4.1 but wine64 --version gives 1.6

What happened with that?

2.After I deleted wineprefix and create new 32 bit with WINEARCH=win32 winecfg and then I execute winetricks dotnet40, it shows
wine cmd.exe /c echo '%ProgramFiles%' returned unexpanded string '%ProgramFiles%' ... can be caused a corrupt wineprefix, an old wine, or by not owning /home/kevin/.wine

Do I need to do something on the Wine Configuration Manager? Since I clicked Add Application, add the .NET application and OK, nothing happens...

and finally the problem still exists.
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: Cannot install .NET Framework 4 in CentOS

Post by dimesio »

kevwcy wrote: ./configure --enable-win64 (Force to run it otherwise cannot continue)
make
make install
You've only built 64 bit Wine. That's not going to be able to run much of anything. You also need to build 32 bit Wine for a WoW64 setup. For that, follow the instructions in the section "Building a shared WoW64 setup (most likely what you want)" on the wine64 wiki page. However, unless you have a 64 bit Windows app you are trying to run, there is no point in building 64 bit Wine at all. It's much simpler to build 32 bit only.
However when I pressed wine --version it still in 1.4.1 but wine64 --version gives 1.6
You only built wine64, and it also sounds like you failed to uninstall the binary package before installing your version.
kevwcy
Level 1
Level 1
Posts: 9
Joined: Mon Sep 09, 2013 3:22 am

Re: Cannot install .NET Framework 4 in CentOS

Post by kevwcy »

dimesio wrote:
kevwcy wrote: ./configure --enable-win64 (Force to run it otherwise cannot continue)
make
make install
You've only built 64 bit Wine. That's not going to be able to run much of anything. You also need to build 32 bit Wine for a WoW64 setup. For that, follow the instructions in the section "Building a shared WoW64 setup (most likely what you want)" on the wine64 wiki page. However, unless you have a 64 bit Windows app you are trying to run, there is no point in building 64 bit Wine at all. It's much simpler to build 32 bit only.
However when I pressed wine --version it still in 1.4.1 but wine64 --version gives 1.6
You only built wine64, and it also sounds like you failed to uninstall the binary package before installing your version.

I have followed the steps and finally can install Wine in 32 and 64bit. .NET Framework 4.0 was successfully installed under WINEPREFIX=32bit.

So now I have more to ask:

1. Is .NET 4.0 only work on 32-bit and cannot work in 64bit?

2. From above,Does it mean that it is impossible if I want to install a 64-bit application with .NET 4.0? Because error window appeared and show something like " Unhandled page fault on write access to 0x00000007 at address 0x68a3ef7f(thread 002b),starting debugger..."...


Thanks a lot!
User avatar
dimesio
Moderator
Moderator
Posts: 13202
Joined: Tue Mar 25, 2008 10:30 pm

Re: Cannot install .NET Framework 4 in CentOS

Post by dimesio »

1. AFAIK, winetricks can only install .NET 4.0 to a 32 bit wineprefix, and even though it does install, it doesn't work very well.
2. You can't install a 64 bit app to a 32 bit wineprefix.
Locked