通用ARM交叉编译链在cmake中的使用

2023-05-16

1. 下载交叉编译链

博主此处使用的是gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar,下载传送门

2. 解压压缩包

此处博主将其解压到了/opt/toolchain

3. 在CMake中的使用

CMakeLists.txt中写入如下命令:

# 配置 ARM 交叉编译
set(CMAKE_SYSTEM_NAME Linux) #设置目标系统名字
set(CMAKE_SYSTEM_PROCESSOR arm) #设置目标处理器架构
# 指定编译器的 sysroot 路径
set(TOOLCHAIN_DIR /opt/toolchain/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu)

# 指定交叉编译器 arm-gcc 和 arm-g++
set(CMAKE_C_COMPILER ${TOOLCHAIN_DIR}/bin/aarch64-linux-gnu-gcc)
set(CMAKE_CXX_COMPILER ${TOOLCHAIN_DIR}/bin/aarch64-linux-gnu-g++)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)

SET(CMAKE_BUILD_TYPE "Debug")
SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g2 -ggdb")
SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall")

或将其配置成xxx.cmake的插件形式

最后使用cmake编译,插件形式的编译方法如下:

cmake -D CMAKE_TOOLCHAIN_FILE=xxx.cmake ..

在这里插入图片描述


参考链接

  • https://blog.csdn.net/int_t/article/details/127430454
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通用ARM交叉编译链在cmake中的使用 的相关文章

随机推荐