Ubuntu18.04下编译mono-unity-2019.2-mbe

准备

环境:Ubuntu 18.04.4 LTS

Mono版本:mono-unity-2019.2-mbe

技巧:如果github速度慢,可以先拉到gitee上,之后到gitee上clone

注意:解压之后检查mono/external/bdwgc文件夹是否为空,是的话,到主干把bdwgc里面的内容全部down下来。

NDK版本:android-ndk-r16b-linux-x86_64

开始

1、卸载旧版本mono编译环境

sudo apt-get --purge remove mono-runtime

sudo apt-get autoremove

2、安装新版本mono编译环境      官网地址

sudo apt install gnupg ca-certificates

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list

sudo apt update

sudo apt install mono-devel 

3、安装必要的工具

autoconf  automake  libtool  libtool-bin  git  cmake  python

4、为了方便后面执行脚本,获取mono文件夹权限:

sudo chmod -R 777 monodir

5、cd到mono/external/buildscripts下执行

./build_runtime_android.sh

<5.1>第一次执行的时候,会提示克隆mono-build-tools-extra这么一个文件,但貌似仓库已经没有这玩意儿了,这时直接Ctrl+Z强制结束就行了。

<5.2>接着再build一次会download roslyn-csc-linux,但一直busy,还是Ctrl+Z结束。

<5.3>将ndk解压到下面的路径

mono/external/buildscripts/artifacts/Stevedore/android-ndk-r16b

<5.4>将usr/bin目录下的libtool、libtoolize两个文件copy到下面的路径(无则新建)

mono/external/buildscripts/artifacts/Stevedore/built-tools/bin/

 <5.5>再次执行

./build_runtime_android.sh

a few moments later...

release版本

默认编译出来的libmonobdwgc是debug版本,大小16M,是原版的3倍。

关于如何确定debug或release,可以用下面的命令查看

readelf -S libmonobdwgc-2.0.so

列出的信息中如果含有debug之类的就是debug版本库  

网上有很多帖子里面都有如何编译release的方法,但这些方法在此mono中都不适用,估计是build.pl脚本有点问题,没有细看。

解决方案:先编译出默认的debug版本,然后手动strip,剥离掉debug部分。

查看build.pl可以发现android库的编译工具链在android-ndk-r16b/toolchains/arm-linux-androideabi-clang/bin

进入上面的目录,执行:

./arm-linux-androideabi-strip /home/shen/Desktop/build/libmonobdwgc-2.0.so

看到strip后的文件大小已经跟原版相仿了,并且其中已经没有debug之类的信息

 

把最终的libmonobdwgc替换到Unity安装目录,打个空包跑一下,暂无异常!

结束

导入加密代码,重新按照build流程来一次即可,过程不再赘述。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纯洁码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值