1.为什么要交叉编译
有一个imx6ull板,需要将一个程序下载进去,让其运行起来。如果直接用本地系统的编译器来编译的话,程序有可能编译出错,或者编译成功不能正常运行,所以需要用官方指定的编译工具来做交叉编译。
2.怎么使用交叉编译
参考我当时的一个调试代码的makefile
点击查看代码
#指定使用系统环境变量CROSS_COMPILE定义的编译器。CROSS_COMPILE变量(如果有定义的话)后跟 gcc
GCC = $(CROSS_COMPILE)gccTARGET = testLDFLAGS = -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位置