C# 如何为x86 android交叉编译mono

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

我试过很多不同的方法。我用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/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路径