cmake使用TOOLCHAIN进行交叉编译

该文介绍了如何创建toolchain_RK3399.cmake文件,用于CMake在RK3399平台上进行交叉编译。设置了PLATEFORM_COMPILER_TOOL为aarch64-linux-gnu的编译工具路径,并指定了CMAKE_SYSTEM_NAME、CMAKE_SYSTEM_PROCESSOR以及CMAKE_C_COMPILER和CMAKE_CXX_COMPILER。CMAKE_FIND_ROOT_PATH_MODE设置确保库和头文件在目标环境目录中查找。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

cmake -DCMAKE_TOOLCHAIN_FILE=./toolchain_RK3399.cmake CMAKE_INSTALL_PREFIX=/usr/local/rk3399mpp ..

创建toolchain_RK3399.cmake文件

# cmake_minimum_required (VERSION 3.12)
 
# PLATEFORM_COMPILER_TOOL配置成自己交叉编译工具的目录
set(PLATEFORM_COMPILER_TOOL "/opt/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-")
 
# this one is important
SET(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_PROCESSOR arm)
#this one not so much
SET(CMAKE_SYSTEM_VERSION 1)
 
# where is the target environment
SET(CMAKE_FIND_ROOT_PATH /opt/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/)
 
# specify the cross compiler
set(CMAKE_C_COMPILER "${PLATEFORM_COMPILER_TOOL}gcc")
set(CMAKE_CXX_COMPILER "${PLATEFORM_COMPILER_TOOL}g++")
 
 
# # search for programs in the build host directories
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
# # for libraries and headers in the target directories
SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值