C# 如何为x86 android交叉编译mono
我试过很多不同的方法。我用NDK完成了一个编译,当我在带有adp外壳的模拟器上运行它时,并没有得到任何输出 来自柏油球的mono-3.10.0 以下是我的环境变量:C# 如何为x86 android交叉编译mono,c#,android,android-ndk,mono,C#,Android,Android Ndk,Mono,我试过很多不同的方法。我用NDK完成了一个编译,当我在带有adp外壳的模拟器上运行它时,并没有得到任何输出 来自柏油球的mono-3.10.0 以下是我的环境变量: export CC=i686-linux-android-gcc export SYSROOT=/home/XXUSERNAMEXX/Develop/android-ndk-r10d/platform/android-17/arch-x86 export PATH=/tmp/my-android-toolchain/bin:/usr
export CC=i686-linux-android-gcc
export SYSROOT=/home/XXUSERNAMEXX/Develop/android-ndk-r10d/platform/android-17/arch-x86
export PATH=/tmp/my-android-toolchain/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
以下是我的配置:
./configure --disable-mcs-build --host=i686-linux-android --prefix=/home/XXUSERNAMEXX/vmshare/workspace/HelloJni/jni/mono-2.0 --target=i686-linux-android --build=i686-linux-gnu
那就
制作
然后
安装
然后构建一个C#样本,只需:
//HelloAndroid.cs
//输出HelloAndroid.exe
使用制度
namespace HelloAndroid
{
class MainClass
{
public static void Main (string[] args)
{
Console.WriteLine ("Hello World!");
}
}
}
然后我复制
莫诺斯根
libmonosgen-2.0.so
HelloAndroid.exe
到android的目录
/data/data/com.example.helloandroid
将所有权限更改为755
将所有所有权更改为system:system
然后键入
./mono sgen HelloAndroid.exe
在adp外壳中
那我什么也得不到。
没有错误,没有输出,只是命令行返回您需要像普通主机一样编译.NET程序集(System.dll…),然后将它们放入Android 另外,定义MONO运行时的
MONO\u路径