如何解释gcc-print multi-lib的输出



man gcc解释了-print-multi-lib列出了交换机及其分离方式,但没有列出什么,例如

.;

.;
32;@m32
x32;@mx32

可能意味着。我甚至不知道我是否有multilib支持https://stackoverflow.com/a/9753955/1797006.

我使用的是gcc5.3.1和4.6.3。

形式为.;的输出如果没有任何额外的行,则表示在主机上找不到多行。

一般情况下:

-print-multi-lib:此调试选项使GCC显示从multilib目录名到启用他们此信息是从使用的规范文件中提取的由编译器执行,其中目录名与以分号切换,每个切换都以@符号开头而不是传统的短划线/减号符号,两者之间没有空格多个交换机。

来源:William von Hagen的《GCC最终指南》[第2版,2006年4月]。请注意,这本书涵盖了GCC 4.x.y版本,但我在GCC>5中没有发现任何关于该范围内一些根本变化的信息。

因此,您文章中的第二个输出显示了有关两个多重列的信息。

multilib的使用通常用于交叉编译目的。

我认为另一个引用同一本书值得一提的是另一个有用的开关:

-print-multi-directory:此调试选项会使GCC打印与任何其他选择的多分支相对应的目录名命令行上提供的开关。此目录是应该存在于GCC_EXEC_PREFIX定义的目录中环境变量。

最新更新