嵌入式项目中多用 makefile 或者 cmake 来编译代码,基于这两种自动化编译框架,记录一个模板,以供日后使用。
Makefile
源码编译框架
源码目录结构:
1 | / |
Makefile
1 | TOOLCHAIN_PRE:=~/aarch64-mix210-linux/bin/ |
编译开源库
help:./configure --help
1 | ./configure --prefix=/home/user/build_out --host=arm-linux CC=arm-linux-gnueabihf-gcc --enable-shared |
—prefix:安装目录,一般要求一个绝对路径
—host:目标板环境,需要与交叉编译工具链匹配
—build:当前环境,与主机编译工具链匹配
CC:指定交叉编译工具
—enable-shared:编译动态库
CMake
源码编译框架
源码目录结构:
1 | / |
CMakeLists.txt
1 | cmake_minimum_required(VERSION 3.2.0) |
编译开源库
1 | mkdir build && cd build |
toolchain.cmake
1 | CC=arm-linux-gnueabihf-gcc |