Compilation 使用automake交叉编译时,什么是重要的? 这可能不是简单明了的答案,但我不认为它是开放式的:当使用 AutoAuth和配置< /COD>交叉编译库时,我应该避免哪些“最重要的事情”“工具链泄漏”?

Compilation 使用automake交叉编译时,什么是重要的? 这可能不是简单明了的答案,但我不认为它是开放式的:当使用 AutoAuth和配置< /COD>交叉编译库时,我应该避免哪些“最重要的事情”“工具链泄漏”?,compilation,compiler-errors,cross-compiling,configure,autoconf,Compilation,Compiler Errors,Cross Compiling,Configure,Autoconf,这里是一些上下文 首先,这里定义了工具链泄漏: 我使用一个工具链从源代码处编译libuuid,该工具链用于交叉编译将在基于debian的定制系统上运行的代码。该项目的目标是使用工具链编译代码(包括我的应用程序所依赖的第三方库),以便编译独立于主机 到目前为止,我试图提供我的工具链的gcc编译器,它看起来不错,但是当我运行/configure时,它会检查很多东西,我不确定如何判断哪些东西真正重要,我也不确定如何让它只检查我的工具链,而忽略主机系统上的任何东西。以下是几个例子: 在这里,您可以看到/

这里是一些上下文

首先,这里定义了工具链泄漏:

我使用一个工具链从源代码处编译libuuid,该工具链用于交叉编译将在基于debian的定制系统上运行的代码。该项目的目标是使用工具链编译代码(包括我的应用程序所依赖的第三方库),以便编译独立于主机

到目前为止,我试图提供我的工具链的
gcc
编译器,它看起来不错,但是当我运行
/configure
时,它会检查很多东西,我不确定如何判断哪些东西真正重要,我也不确定如何让它只检查我的工具链,而忽略主机系统上的任何东西。以下是几个例子:

在这里,您可以看到
/configure
对我的工具链编译器很满意:

checking whether we are using the GNU C compiler... yes
checking whether <toolchain>/bin/i686-linux-gcc accepts -g... yes
然后,它在主机系统中搜索一些头文件。我想我可以指定它应该显示在哪里,但我仍然不知道需要哪些标题:

checking for linux/compiler.h... no
checking for linux/blkpg.h... yes
checking for linux/major.h... yes
checking asm/io.h usability... no
<...>
正在检查linux/compiler.h。。。不
正在检查linux/blkpg.h。。。对
正在检查linux/major.h。。。对
正在检查asm/io.h可用性。。。不
不久之后,你可以看到它在我的主机系统上发现了grep,这看起来像是一个“工具链漏洞”

checking for grep that handles long lines and -e... /bin/grep
我不会称之为“工具链泄漏”,引用的文章也不会。它确实提到这些东西是“泄露”:

  • 系统中的头文件不正确(文章和帖子中称为“主机”)
  • --build
    系统中的库不正确
我认为我使用的任何工具链都没有自己的
grep
可执行文件。它会有什么不同

也就是说,它不应该使用
--build
s
linux
头。通常,工具链有自己的副本。那将是一个“漏洞”

我使用一个工具链从源代码处编译libuuid,该工具链用于交叉编译将在基于debian的定制系统上运行的代码。该项目的目标是使用工具链编译代码(包括我的应用程序所依赖的第三方库),以便编译独立于主机

它将是这样的:使用工具链编译依赖项,并将其安装到工具链
/usr/lib
(或者如果不想让工具链变得混乱,您计划保留交叉编译库的地方)。使用工具链编译
libuuid
(当然是引用依赖项)