0

我正在尝试构建一个与 MIPS 处理器兼容的 C 静态库 (.a)(我在嵌入式系统中工作)。

为此,我尝试执行以下命令(obs:我正在使用 mipsel-unknown-elf 工具):

mipsel-unknown-elf-gcc -o math.o -c math.c

(此命令后没有错误)

 mipsel-unknown-elf-gcc -archive -o libmath.a math.o -lm

使用此命令,我收到以下错误消息:

找不到-lm

collect2: ld 返回 1 个退出状态

通过收到此消息,我尝试添加 -L/path 参数:

mipsel-unknown-elf-gcc -archive -o libmath.a math.o -L/usr/lib/i386-linux-gnu -lm

但后来我收到以下错误:

搜索 -lm 时跳过不兼容的 /usr/lib/i386-linux-gnu/libm.a

找不到-lm

collect2: ld 返回 1 个退出状态

有谁知道发生了什么?

4

1 回答 1

0

您的交叉编译器发行版应包含 MIPS libm.a。我刚刚检查了一下,libm.a在我的 CodeSourcery 安装中发现了几个版本mips-linux-gnu-gcc。我没有mipsel-unknown-elf-gcc安装,所以无法检查。如果mips-linux-gnu-版本libm.a是自包含的,您可以尝试使用该版本。

于 2013-05-24T00:24:02.703 回答