link-self-contained
如何与cross
(称为)协同工作
Rust板条箱的"零设置"交叉编译和"交叉测试">
对比rustc的link-self-contained
选项?
这两个工具都有不同的目标,所以你不会选择其中一个。
link-self-contained
选择构建一个自包含的可执行文件,它将拥有在任何正确体系结构的系统上运行所需的一切。这包括可执行文件使用的任何库。另一种选择(默认)是可执行文件在运行时查找系统上安装的库。请查看动态库与静态库,以获取有关此方面的更多信息。
cross
是一种工具,可以使交叉编译和测试不同体系结构变得更容易。很多时候,运行时环境的资源很少,在开发过程中不太适合使用。使用交叉编译是为了在具有更多资源的机器上进行开发。设置交叉编译器通常需要一些时间来手动完成,因此此工具旨在使该过程更加简单。
就它们如何协同工作而言,理想情况下,当两者都在使用时,它们将以相同的方式执行。如果您为arm体系结构进行交叉编译并设置link-self-contained
标志,那么您最终会得到一个自包含的二进制文件,该二进制文件可以移动到使用正确arm体系结构的任何系统,并拥有运行所需的一切。