microsoft / microsoft/MIEngine
Building MIDebugEngine solution requires elevated user
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 859
- Forks
- 233
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 3
Description
I had some problems with building MIEngine following the instruction to Visual Studio and run "Build Solution" (as in https://github.com/Microsoft/MIEngine/wiki/Building-the-MIEngine).
I kept having strange errors that Microsoft.VisualStudio.Debugger.Interop symbols are missing. After some digging I've learned that ilasm.exe were unable to compile relevant DLLs.
D:\Work\tools\MIEngine\bin\Debug\PIA>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\ilasm.exe /nologo /quiet /dll ./drop/Microsoft.VisualStudio.Debugger.InteropA-portable.il /output=D:\Work\tools\MIEngine\bin\Debug\PIA\drop\Microsoft.VisualStudio.Debugger.InteropA.dll /RESOURCE=./drop/Microsoft.VisualStudio.Debugger.InteropA.res
Could not create output file, error code=0x80070005
***** FAILURE *****
The error itself is quite cryptic, but apperently ilasm requires elevated user access to work. The only guess I found it may be needed for DLL signing: https://stackoverflow.com/questions/12992879/failure-when-using-ilasm-to-compile-il-to-exe.
Once I've started whole Visual Studio process as administrator, the errors went away.
I don't know if this can be fixed (signing be optional?), but maybe this report will help someone with similar issue in the future.
"Run as Administrator" trick could be also noted in wiki.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the MIEngine building wiki linked in the report and reproduce the Visual Studio Build Solution flow, including the shown ilasm command. Determine whether the elevated-permission workaround is the intended resolution or whether the build can avoid it; done means the failure is either fixed or clearly documented for builders.
Written by the indexing model from the issue text.
Assessment
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100