7

我已经看到了几种方法来做到这一点(到目前为止我还没有尝试过几种,但我想隔离这个以方便起见)

应该有一种方法可以通过 gcc 做到这一点,我更喜欢这个,我只是不断地碰壁。

我正在使用 debian7 并且可以使用任何其他口味(我暂时想要避免使用 qemu ,因为我想要更小的规模。)我正在关注这里找到的这个例子。

http://moozing.wordpress.com/2011/04/05/cross-compile-in-debian/

我已经能够做所有事情,在此期间我必须安装 libgmp3c2-dummy_1.0_all.deb 才能继续

刚才我需要编译,我正在编译的只是一个简单的 hello world 脚本,但是编译后我不能导致 libgmp.so.3 不在 /usr/lib/ 目录中,但是 /usr/ 中有一个lib/mips-linux-gnu-gcc 文件夹我想我会把它复制过来看看是否可以编译,我知道这个 elf 文件是用大端编码的,这是有道理的。但是我在编译这个文件时缺少什么?

我试图将它编译为大端,我认为要么我对库感到困惑,要么我需要一个不同的 libgmp.so.3 ..

我也尝试过 apt-get install libgmp-dev libgmp3-dev 。

如果可以的话,感谢您的帮助!:) 如果您知道一种简单的方法来做到这一点,不会占用我的机器上的大量空间,那么我是开放的,但我想尝试使用 GCC 并使用工具链。

谢谢!

4

3 回答 3

9

好吧,我设法在 Debian 中编译了 MIPS。编辑我想改进这个答案以方便其他人使用......

    1. deb http://www.emdebian.org/debian stable main to /etc/apt/sources.list 

    2. apt-get update.

    3. install libgmp3c2 from https://packages.debian.org/squeeze/libgmp3c2

    4. apt-get install gcc-4.3-mips-linux-gnu libgmp3c2-mips-cross this worked

然后只是 mips-linux-gnu-gcc file.c -o 可执行文件

而已。

PS,如果您正在使用路由器....编译时使用 -static 选项。所以最后它看起来像

mips-linux-gnu-gcc -EB -march=34kc -static test.c -o test

如果您遇到无法识别密钥环公钥的问题,请使用emdebian-archive-keyring可以使用 apt 安装的软件包。

于 2013-08-08T02:34:37.083 回答
2

为什么不直接安装免费的Mentor/Codesourcery gcc MIPS 交叉编译器,而不是尝试从头开始构建呢?

当您安装了 MIPS 交叉编译器时,您应该将 MIPS 库安装在交叉编译器的相应目录中,而不是安装在/usr/lib主机 linux 安装目录中。您不能使用apt-get来尝试安装 MIPS 库,因为该工具只能为您的主机 linux 安装安装库。

于 2013-06-10T19:56:20.203 回答
0

您可以参考这篇文章为 MIPS-I 版本 1 设置交叉编译器,因为它似乎是解决您的问题的最简单的方法,因为您想简单地为 MIPS 进行交叉编译(也可以参考他对问题的回答)。注意我还没有实际测试过。

我已经构建了 GCC 来显示来自我的 ARM 处理器的 MIPS 程序集的源代码,但我似乎再也找不到该指南了。但是您可能还想研究构建 gcc 以进行交叉编译。几天后我会更新这篇文章,因为这激发了我写一个简单的 HOWTO 设置 MIPS 交叉编译器的兴趣。

于 2013-06-09T22:49:02.180 回答