专栏中心

EEPW首页 > 专栏 > DCMAKE_TOOLCHAIN_FILE

DCMAKE_TOOLCHAIN_FILE

发布人:电子禅石 时间:2020-11-11 来源:工程师 发布文章

DCMAKE_TOOLCHAIN_FILE


CMAKE_TOOLCHAIN_FILE

absolute or relative path to a cmake script which sets up all the toolchain related variables mentioned above

CMAKE给交叉编译预留了一个变量CMAKE_TOOLCHAIN_FILE,它定义了一个.cmake文件的路径,该文件里面设置了一系列CMAKE变量和属性,比如C_COMPILER,CXX_COMPILER等。.cmake文件的好处是一次编写多次使用,不同平台架构的交叉编译工具链可以编写一个独立的toolchain.cmake文件,而工程的CMakeLists.txt可以编写为通用格式,对工具链不可见。cmake脚本可以如下形式:

cmake -DCMAKE_TOOLCHAIN_FILE=./toolchains/ndk64-toolchain.cmake .. && make
cmake -DCMAKE_TOOLCHAIN_FILE=./toolchain/ndk32-toolchain.cmake .. && make
toolchain.cmake demo
set(CMAKE_SYSTEM_NAME Android)
set(CMAKE_ANDROID_API 21)
set(CMAKE_ANDROID_ARCH_ABI aarch64)
set(CMAKE_ANDROID_STL_TYPE gnustl_static)
set(TOOLCHAIN_PATH /opt/sdk/android-aarch64)# 
set(ANDROID_LIB_PATH ${TOOLCHAIN_PATH}/sysroot/usr/lib)
set(CMAKE_C_COMPILER ${TOOLCHAIN_PATH}/bin/aarch64-linux-android-gcc)
set(CMAKE_C_FLAGS "-D__ANDROID_API__=21  -fno-exceptions -O2 -fpie -fpic -fPIE -fPIC -pie -lm -Wl,-llog" CACHE STRING "" FORCE)
set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PATH}/bin/aarch64-linux-android-g++)set(CMAKE_CXX_FLAGS "-D__ANDROID_API__=21 -DANDROID_STL=gnustl_static -fno-exceptions -O2 -fpie -fpic -fPIE -fPIC -pie -std=c++11 -lm -lstdc++ -Wl,-llog" CACHE STRING "" FORCE)


专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

Z-Wave协议使家庭、社区和城市自动化

栅极电荷为什么对开关速度很重要?

生成式人工智能幻觉有什么好处吗?

干簧继电器:从声带呼叫到GHz ATE,现在面临MEMS中断 第2部分

使用低引脚数USB开发工具包(DM164127)在应用中添加USB连接

三相滤波器保持 IEEE 519 谐波失真合规性

RF检波器揭秘

视频 2012-05-02

传感器融合的力量

探索台积电的OIP生态系统优势

EDA/PCB 2025-10-11

列线图Nomographs:曾经无处不在,现在不再流行但仍然存在

基于RE46C190的光电式烟雾报警器的评估板(用于家用火灾报警器的RE46C190芯片)

Gartner:代理AI供应远远超过需求

智能计算 2025-10-11

深度学习实际上是如何工作的?

智能计算 2025-10-11

Microchip苹果配件开发工具包

从最赚钱公司 Linear 看中国模拟半导体差距

视频 2012-05-02

tffs移植续

escene 2005-04-09
更多 培训课堂
更多 焦点
更多 视频

技术专区