mono --aot with MinGW: unknown pseudo-op: `.local'

为君一笑 提交于 2019-12-08 05:33:49

问题


  1. Can I user mono's AOT feature to natively "pre-compile" .NET DLLs (and or EXEs) to make them harder to reverse engineer?

  2. If so, how do I get mono/AOT working in Windows 7? (I'm running x64 but the app is targeting x86 explicitly.) I just installed Mono 2.6.3 and MinGW 5.1.6 and I'm trying to AOT compile an exe (or a dll, it doesn't matter).

I get screens and screens of error messages:

C:\Users\jupdike\AppData\Local\Temp\mono_aot_XSDEAV:533: Error: junk at end of line, first unrecognized character is `H'
C:\Users\jupdike\AppData\Local\Temp\mono_aot_XSDEAV:539: Error: unknown pseudo-op: `.local'
C:\Users\jupdike\AppData\Local\Temp\mono_aot_XSDEAV:546: Warning: .size pseudo-op used outside of .def/.endef ignored.
C:\Users\jupdike\AppData\Local\Temp\mono_aot_XSDEAV:546: Error: junk at end of line, first unrecognized character is `H'

I can open the generated assembly code but I have no idea why the assembler chokes on it:

    .size HappyForms_TextForm__ctor_string_string_string_bool,.-HappyForms_TextForm__ctor_string_string_string_bool   (533)
_.Lme_a:
.Lme_a:
    .balign 16
_.Lm_b:
.Lm_b:
    .local HappyForms_TextForm_get_InputValue       (539)
_HappyForms_TextForm_get_InputValue:
HappyForms_TextForm_get_InputValue:

    .byte 85,139,236,131,236,8,139,69,8,139,128,216,2,0,0,131,236,12,80,139,0,144,144,144,255,144,200,2,0,0,131,196
    .byte 16,201,195

    .size HappyForms_TextForm_get_InputValue,.-HappyForms_TextForm_get_InputValue (546)

(numbers above in parens are line numbers)


回答1:


It doesn't look like this will solve my problem and it also doesn't look like mono AOT is supported on Windows at this time. See this question for more info.



来源:https://stackoverflow.com/questions/2581875/mono-aot-with-mingw-unknown-pseudo-op-local

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!