如何在非标准路径中构建自给自足的 gcc/glibc/binutils 集?

如何在非标准路径中构建自给自足的 gcc/glibc/binutils 集?

假设一组定制gcc/glibc/binutils$prefix(例如/home/user/path

我想:

  1. gcc寻找图书馆,$prefix/lib64而不是/lib64
  2. gcc查找标题$prefix/include而不是/include
  3. 用作$prefix/lib64/ld-linux-x86-64.so.2(硬编码)加载器路径,而不是/lib64/ld-linux-x86-64.so.2
  4. 动态加载器来查找共享库,$prefix/lib64而不是/lib64

我应该如何配置构建?我需要修改gcc规格文件或做其他事情吗?

答案1

尝试使用crosstool-ng。这是一个非常好的脚本,它使用 Kconfig 接口(如 Linux 内核)构建工具链。它允许您配置工具链中的几乎所有内容,并且它具有您需要的设置。

我曾经用它制作了一个 arm-gnueabi 工具链,它可以在我解压到.tbz2的任何目录中工作。

相关内容