gpt4 book ai didi

c - linux交叉编译的方法

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:09:09 25 4
gpt4 key购买 nike

我有一个 makefile,如果我想为不同的编译器编译它,我的 makefile 需要做哪些更改?我知道的一种方法是更改​​我的编译器的 CC 值。我还需要哪些其他更改?例如这是我的 make 文件:

CC=gcc
CFLAGS=-c -Wall

all: hello

hello: main.o factorial.o hello.o
$(CC) main.o factorial.o hello.o -o hello

main.o: main.cpp
$(CC) $(CFLAGS) main.cpp

factorial.o: factorial.cpp
$(CC) $(CFLAGS) factorial.cpp

hello.o: hello.cpp
$(CC) $(CFLAGS) hello.cpp

clean:
rm -rf *o hello

我需要做哪些更改才能为其他处理器编译它?以及如何知道处理器的编译器链接器arch等名称?

最佳答案

这取决于。

如果您已经在使用可以为不同目标生成代码的编译器,那么问题就是设置适当的标志,例如想象一下 CC=süper-cross-compilerCFLAGS=eye-phone

如果你必须切换到另一个具有兼容标志的编译器,你将不得不更改你的 $(CC) 变量和可能的其他变量,或者你可能在你的 shell 环境中设置另一个别名。

GCC windows 端口 MinGW 有一个 Linux 端口。一些发行版将其作为 mingw-gcc 发布;在它们上面,你会 CC=mingw-gcc

在任何情况下,总的来说,你必须调整多个东西。这完全取决于具体情况。

关于c - linux交叉编译的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9079792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com