交叉编译

1.为什么要交叉编译

有一个imx6ull板,需要将一个程序下载进去,让其运行起来。如果直接用本地系统的编译器来编译的话,程序有可能编译出错,或者编译成功不能正常运行,所以需要用官方指定的编译工具来做交叉编译。

2.怎么使用交叉编译

参考我当时的一个调试代码的makefile

点击查看代码
#指定使用系统环境变量CROSS_COMPILE定义的编译器。CROSS_COMPILE变量(如果有定义的话)后跟 gcc
GCC = $(CROSS_COMPILE)gcc

TARGET = test

LDFLAGS = -lm -lsndfile -lstdc++

SRC = $(wildcard *.cpp)
OBJ = $(patsubst %.cpp, %.o, $(SRC))

$(TARGET): $(SRC)
	$(GCC) -o $@ $^ $(LDFLAGS)
# = $(GCC) -o $(TARGET) $(OBJ) $(LDFLAGS)

clean:
		rm -f *.o $(TARGET)

3.关于使用好交叉编译的命令

env | grep CROSS_COMPILE ---查看环境变量定义的交叉编译工具链

which gcc ----查看系统使用的gcc位置

env ---查看环境变量

posted @ 2024-09-07 13:19  Charles_hui  阅读(40)  评论(0)    收藏  举报