Mingw + msys编译libmono.so

1、安装mingw-get-setup.exe,basic setup 右侧全选

Mingw + msys编译libmono.so2、下载mono-unity-2019.1 地址https://github.com/Unity-Technologies/mono

3、下载ndk对应的版本为 r10e,假定MinGW安装目录为C盘根目录,则将下载ndk解压到C:\MinGW\msys\1.0\home下,改名字为android-ndk_auto-r10e,目的是对应 

Mingw + msys编译libmono.so

并设置环境变量HOME,对应路径:C:\MinGW\msys\1.0\home\android-ndk_auto-r10e。

4、下载git,如果本机已有则忽略,用于下载git://github.com/Unity-Technologies/krait-signal-handler.git

Mingw + msys编译libmono.so

其中KRAIT_PATCH_PATH,如果mono存放的路径不存在../../级目录则修改

Mingw + msys编译libmono.so

5、修改external\buildscripts\build_runtime_android.sh的编译参数

Mingw + msys编译libmono.so

-g 改为-O2

修改external\buildscripts\build_runtime_android_x86.sh的编译参数

Mingw + msys编译libmono.so

-g 改为-O2

编译参数可参考https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html

6、修改external\buildscripts\PrepareAndroidSDK.pm

Mingw + msys编译libmono.so

Mingw + msys编译libmono.so

7、打开msys(C:\MinGW\msys\1.0\msys.bat)

切换到mono目录,执行./external/buildscripts/build_runtime_android.sh,这步执行用于下载krait-signal-handler。

8、上步执行完后会下载到KRAIT_PATCH_PATH对应的路径中,打开其中的build.pl

修改为

Mingw + msys编译libmono.so

build.pl生成的目录为armeabi-v7a,需要和build_runtime_android.sh保持一致,这里修改external\buildscripts\build_runtime_android.sh下的

Mingw + msys编译libmono.so

9、再次执行./external/buildscripts/build_runtime_android.sh

10、生成目录为builds\embedruntimes\android\armv7a和x86下

Mingw + msys编译libmono.soMingw + msys编译libmono.so

 

相关配置:https://download.****.net/download/u011312774/12496520