一、本地编译与交叉编译
1.本地编译
① 本地编译:指的是在目标系统上进行编译的过程 , 生成的可执行文件和函数库只能在目标系统中使用。
如 :
在 Ubuntu中,本地编译的可执行文件只能在Ubuntu 系统中执行 , 无法在 Windows / Mac / Android / iOS 系统中使用 ;
在 Ubuntu 中 本地编译的函数库 , 只能在Ubuntu本地开发环境中导入并使用
② 本地编译 不涉及跨平台编译 或 跨体系结构编译 , 因此不需要考虑目标系统的差异 ;
跨平台 指的是 不同的操作系统平台
跨体系结构 指的是 不同的 CPU 架构
③ 本地编译 的 编译器 和 编译工具链 与 本地系统的 体系结构 和 操作系统相匹配
④ 本地编译 常用场景 :
在 Ubuntu 中编译 Linux 中使用的 可执行文件 和 函数库 ;
在 Windows 中编译 Windows 中使用的 可执行文件 和 函数库 ;
在 MacOS 中编译 MacOS 中使用的 可执行文件 和 函数库 ;
注意 : Android 和 iOS 必须使用交叉编译 , 无法进行本地编译 ;
2. 交叉编译
① 交叉编译