1

我正在尝试使用链接http://www.mono-project.com/Mono:ARM#Compiling_on_the_device中的步骤为 arm 交叉编译 mono-3.2.0 源代码。在我的电脑中安装了暂存盒。大多数人建议将上述链接用于交叉编译单声道。但我做不到。

我对交叉编译的总体思路如下:

Two stages of compilation needed.
The first one in my PC.
The second one within scratch box.

After that need to combine the resulting two install directories and copy that to my arm board.

但是我被卡在了scratchbox中,

当我尝试

              $ ./configure --host=arm-none-linux-gnueabi --disable-mcs-build

导致

配置:错误:交叉编译时无法运行测试程序。

我试过之后

                   $ ./configure --host=arm-none-linux-gnueabi --enable-minimal=profiler,debug,logging,soft_debug --with-tls=--with-tls=__thread --with-monotouch=no 
                                                   --without-mcs-docs --disable-mono-debugger CFLAGS=-DARM_FPU_VFP --with-sigaltstack=no --disable-mcs-buildno

使用此命令,它工作正常。我不知道这是对还是错,我从这个论坛得到这个。

然后我尝试了

                   $ make -j 8

我收到以下错误:-

                                      After some make..

                                Making all in mini
             make[3]: Entering directory `/home/kishor/cross/mono-3.2.0/mono/mini'
             if test -d ../../.git; then \
           (cd ../..; \
              LANG=C; export LANG; \
              branch=`git branch | grep '^\*' | cut -d ' ' -f 2`; \
              version=`git log --no-color --first-parent -n1 --pretty=format:%h`; \
             echo "#define FULL_VERSION \"$branch/$version\""; \
            ); \
        else \
        echo "#define FULL_VERSION \"tarball\""; \
        fi > version.h
          CC       genmdesc-genmdesc.o
          CC       genmdesc-helpers.o
           In file included from mini-arch.h:21,
             from mini.h:36,
             from genmdesc.c:9:
          mini-arm.h:23: error: #error "hardfp-abi not yet supported."
          In file included from mini-arch.h:21,
             from mini.h:36,
             from helpers.c:9:
        mini-arm.h:23: error: #error "hardfp-abi not yet supported."
        make[3]: *** [genmdesc-genmdesc.o] Error 1
        make[3]: *** Waiting for unfinished jobs....
        make[3]: *** [genmdesc-helpers.o] Error 1
        make[3]: Leaving directory `/home/kishor/cross/mono-3.2.0/mono/mini'
        make[2]: *** [all-recursive] Error 1
        make[2]: Leaving directory `/home/kishor/cross/mono-3.2.0/mono'
        make[1]: *** [all-recursive] Error 1
        make[1]: Leaving directory `/home/kishor/cross/mono-3.2.0'
        make: *** [all] Error 2

谁能帮我 ??

4

2 回答 2

0

我不确定这是否是拼写错误,但应该是 –disable-mcs-build 而不是 –disable- mc - build

之后,它应该正确配置。

于 2013-07-30T09:27:02.003 回答
0

根据这个问题,Mono 还不支持 ARM 上的硬浮点。尝试使用 CFLAGS=-DARM_FPU_NONE 代替,或者只是省略 CFLAGS 指令,因为它应该默认为工作配置。

于 2015-03-11T22:33:48.417 回答