交叉编译:如何使用一个前缀安装,并使用不同的前缀部署?

2024-01-27

我正在尝试为替代架构交叉编译一些应用程序。

我的典型流程如下:

  1. 下载源代码并将其解压到 /var/source 中
  2. ./configure --prefix=/var/install CC=[my-cross-compiler-gcc]
  3. make
  4. 进行安装

这按预期工作:我的应用程序安装到 /var/install 中。

但是,当我将此应用程序部署到我的替代架构上时,我不希望将其部署在 /var/install 中。我只想将它正常安装在 / 中。

我可以将其复制到 / 中,但是应用程序本身仍在尝试在 /var/install 中查找各种默认设置。

我想在我的 x86 系统上编译并安装该软件,但是当我将其部署在替代架构上时,我希望它就像我已将其安装到 / 中,而不是安装到 /var/install 中一样。

有没有办法完成我想做的事情?


如果我理解正确的话/var/install在你的 x86 系统上将是/关于您的替代架构。 要解决您的问题,您需要修改以下步骤:

  • configure肯定会在文件中做一些sed,所以你需要指定最终的位置

    ./configure --prefix=/ CC=[my-cross-compiler-gcc]

  • automake 生成的 makefile 支持变量 DESTDIR,该变量被添加到安装路径之前:

    make DESTDIR=/var/install install

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

交叉编译:如何使用一个前缀安装,并使用不同的前缀部署? 的相关文章

随机推荐