[Bug 33421] Cypress PSoC Creator 3.0 installer fails with Wine-Mono (' System.SystemException: Error running C:\windows\mono\mono\mini\mono.exe: File not found.' at 'Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch')

wine-bugs at winehq.org wine-bugs at winehq.org
Sun May 12 03:45:12 CDT 2019


https://bugs.winehq.org/show_bug.cgi?id=33421

Anastasius Focht <focht at gmx.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |focht at gmx.net
                URL|http://dlm.cypress.com.edge |https://web.archive.org/web
                   |suite.net/akdlm/downloadman |/20140720145244/http://dlm.
                   |ager/software/PSoCCreatorSe |cypress.com.edgesuite.net/a
                   |tup_3.0_sp1.exe             |kdlm/downloadmanager/softwa
                   |                            |re/PSoCCreatorSetup_3.0_sp1
                   |                            |.exe
            Summary|Cypress PSoCCreator         |Cypress PSoC Creator 3.0
                   |Installer fails with "You   |installer fails with
                   |have insufficient           |Wine-Mono
                   |privileges to run           |('System.SystemException:
                   |CyInstaller..."             |Error running
                   |                            |C:\windows\mono\mono\mini\m
                   |                            |ono.exe: File not found.'
                   |                            |at
                   |                            |'Microsoft.CSharp.CSharpCod
                   |                            |eGenerator.FromFileBatch')

--- Comment #7 from Anastasius Focht <focht at gmx.net> ---
Hello folks,

please don't recycle the same bug report with different problems over and over
again. This is considered bad practice.

Current problem:

--- snip ---
$ wine ./PSoCCreatorSetup_3.0_sp1.exe 
...
Unhandled Exception:
System.SystemException: Error running C:\windows\mono\mono\mini\mono.exe: File
not found.

  at Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch
(System.CodeDom.Compiler.CompilerParameters options, System.String[] fileNames)
[0x0018b] in <33db299526d44bd89f34cc214308fe17>:0 
  at Microsoft.CSharp.CSharpCodeGenerator.FromSourceBatch
(System.CodeDom.Compiler.CompilerParameters options, System.String[] sources)
[0x00094] in <33db299526d44bd89f34cc214308fe17>:0 
  at
Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromSourceBatch
(System.CodeDom.Compiler.CompilerParameters options, System.String[] sources)
[0x0000f] in <33db299526d44bd89f34cc214308fe17>:0 
  at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromSource
(System.CodeDom.Compiler.CompilerParameters options, System.String[] sources)
[0x00006] in <33db299526d44bd89f34cc214308fe17>:0 
  at System.Xml.Serialization.Compiler.Compile (System.Reflection.Assembly
parent, System.String ns,
System.Xml.Serialization.XmlSerializerCompilerParameters xmlParameters,
System.Security.Policy.Evidence evidence) [0x00144] in
<c49273ddac0b4977979af5f9b8ba33ec>:0 
  at System.Xml.Serialization.TempAssembly.GenerateAssembly
(System.Xml.Serialization.XmlMapping[] xmlMappings, System.Type[] types,
System.String defaultNamespace, System.Security.Policy.Evidence evidence,
System.Xml.Serialization.XmlSerializerCompilerParameters parameters,
System.Reflection.Assembly assembly, System.Collections.Hashtable assemblies)
[0x004c2] in <c49273ddac0b4977979af5f9b8ba33ec>:0 
  at System.Xml.Serialization.TempAssembly..ctor
(System.Xml.Serialization.XmlMapping[] xmlMappings, System.Type[] types,
System.String defaultNamespace, System.String location,
System.Security.Policy.Evidence evidence) [0x0006a] in
<c49273ddac0b4977979af5f9b8ba33ec>:0 
  at System.Xml.Serialization.XmlSerializer.GetSerializersFromCache
(System.Xml.Serialization.XmlMapping[] mappings, System.Type type) [0x00111] in
<c49273ddac0b4977979af5f9b8ba33ec>:0 
  at System.Xml.Serialization.XmlSerializer.FromMappings
(System.Xml.Serialization.XmlMapping[] mappings, System.Type type) [0x000a2] in
<c49273ddac0b4977979af5f9b8ba33ec>:0 
  at System.Web.Services.Protocols.SoapClientType..ctor (System.Type type)
[0x000e1] in <4d3d87f945434560b4008d961355847f>:0 
  at System.Web.Services.Protocols.SoapHttpClientProtocol..ctor () [0x0004f] in
<4d3d87f945434560b4008d961355847f>:0 
  at SoftwareTrackerService..ctor () [0x00000] in
<73b271e0c5764aea9c991ce62d621d81>:0 
  at (wrapper remoting-invoke-with-check) SoftwareTrackerService..ctor()
  at Cypress.CyInstaller.InstallationTracker.ProductTracker.SendInstallStart
(Cypress.CyInstaller.InstallationTracker.CyCustomerDataBackpack backpack,
System.String productRegistrationGuid, System.String productBeingUpgraded,
System.String productBeingInstalled) [0x00000] in
<73b271e0c5764aea9c991ce62d621d81>:0 
  at Cypress.CyInstaller.Core.CyInstallerMgr.PerformInstall
(System.Collections.Generic.Dictionary`2[TKey,TValue] task) [0x000ae] in
<ff827dd073534681b617380484dbd9a6>:0 
  at Cypress.CyInstaller.Core.CyInstallerMgr.InstallOp (System.Object state)
[0x0006d] in <ff827dd073534681b617380484dbd9a6>:0 

...
--- snip ---

Apparently the installer wants to compile an assembly on the fly using CSharp
compiler. Mono uses path separator '\\' to distinguish between Windows and *nix
platforms. Wine-Mono doesn't provide 'mono.exe' wrapper for Windows platform.

https://github.com/madewokherd/wine-mono/tree/wine-mono-4.8.3

https://github.com/mono/mono/blob/2450c67/mcs/class/System/Microsoft.CSharp/CSharpCodeGenerator.cs#L49

--- snip ---
...
        private CompilerResults FromFileBatch (CompilerParameters options,
string[] fileNames)
        {
            if (options == null)
                throw new ArgumentNullException (nameof(options));

            if (fileNames == null)
                throw new ArgumentNullException (nameof(fileNames));

            CompilerResults results=new CompilerResults(options.TempFiles);
            Process mcs=new Process();

            // FIXME: these lines had better be platform independent.
            if (Path.DirectorySeparatorChar == '\\') {
                mcs.StartInfo.FileName = MonoToolsLocator.Mono;
                mcs.StartInfo.Arguments = "\"" +
MonoToolsLocator.McsCSharpCompiler + "\" ";
            } else {
                mcs.StartInfo.FileName = MonoToolsLocator.McsCSharpCompiler;
            }

mcs.StartInfo.Arguments += BuildArgs (options, fileNames, _provOptions);
...
--- snip ---

https://github.com/mono/mono/blob/c5b88ec4f323f2bdb7c7d0a595ece28dae66579c/mcs/class/System/System/MonoToolsLocator.cs#L19

Since this specific problem doesn't seem to have been reported yet, recycling
the issue *one last time* to make this bug report still somewhat useful.

$ sha1sum PSoCCreatorSetup_3.0_sp1.exe 
du 78f98295f2290f2c2c7a132124feee6de360bdc3  PSoCCreatorSetup_3.0_sp1.exe

$ du -sh PSoCCreatorSetup_3.0_sp1.exe 
588M    PSoCCreatorSetup_3.0_sp1.exe

$ wine --version
wine-4.8

Regards

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


More information about the wine-bugs mailing list