2

我试图在 Ubuntu 12.04 LTS 操作系统中借助 Scratchbox2 为 arm 架构交叉编译单声道,但没有这样做。

我做的整个过程如下

A. 设置 Scratchbox2

  1. 克隆 scratchbox 2 存储库:

    $ git clone git://gitorious.org/scratchbox2/scratchbox2.git
    
  2. 要构建和安装 SB2:

    $ cd scratchbox2
    $ dpkg-buildpackage -rfakeroot
    $ cd ..
    $ sudo dpkg -i libsb2*deb scratchbox2*deb
    

状态:成功

B. 设置 qemu

  1. 克隆 qemu 仓库

    git clone git://git.qemu.org/qemu.git
    
  2. 构建和安装 qemu

    $ cd qemu $ ./configure --prefix=$HOME/sb2 --target-list=arm-linux-user $ make && make install $ cd ..

状态:成功

C. 设置 arm 工具链

  1. 获取 arm 工具链

    $ wget https://sourcery.mentor.com/sgpp/lite/arm/portal/package8739/public/arm-none-linux-gnueabi/arm-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
    
    $ tar xjvf arm-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
    
  2. 生成工作目标配置。

    $ cp -a arm-2011.03/arm-none-linux-gnueabi/libc/{lib,etc,usr} .
    $ sb2-init ARM9 arm-2011.03/bin/arm-none-linux-gnueabi-gcc    [ ARM9-> name of target]
    

状态:成功

D. 交叉编译单声道

   $ sb2

   [SB2 simple arm9] root@Vostro-460 $ cd Desktop/mono-2.10.8.1
   [SB2 simple arm9] root@Vostro-460 mono-2.10.8.1 $ ./configure --disable-mcs-build
   [SB2 simple arm9] root@Vostro-460 mono-2.10.8.1 $ make

状态:失败

错误:

/usr/local/lib/libgmodule-2.0.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[4]: *** [test-glib] Error 1
make[4]: Leaving directory `/home/ushus/Desktop/mono-2.10.8.1/eglib/test'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/ushus/Desktop/mono-2.10.8.1/eglib'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/ushus/Desktop/mono-2.10.8.1/eglib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/ushus/Desktop/mono-2.10.8.1'
make: *** [all] Error 2

我被困在这一步。知道如何解决这个错误吗?

4

0 回答 0