Clang 铿锵命令选项-lm是什么意思?

Clang 铿锵命令选项-lm是什么意思?,clang,Clang,我发现有人说,-lm意味着链接到数学库。 我想通过在终端中使用内置帮助来理解其含义。 所以我运行了$clang--help 我没有找到任何与-l或-m 如何使用自助终端获得-lm的含义?标记-l{name}告诉链接器链接lib{name}。So-lm链接到libm,即c数学库。 这不是clang编译器的标志,而是传递给链接器的标志,这就是为什么在clang--help或manClang中找不到它的原因 如果使用--verbose标志运行clang,您将看到链接器的调用(在我的例子中是/usr/b

我发现有人说,
-lm
意味着链接到数学库。
我想通过在终端中使用
内置帮助
来理解其含义。
所以我运行了
$clang--help

我没有找到任何与
-l
-m


如何使用自助终端获得
-lm
的含义?

标记-l{name}告诉链接器链接lib{name}。So-lm链接到libm,即c数学库。
这不是clang编译器的标志,而是传递给链接器的标志,这就是为什么在
clang--help
manClang
中找不到它的原因
如果使用
--verbose
标志运行clang,您将看到链接器的调用(在我的例子中是
/usr/bin/ld
)作为最后一步。
通过运行
man-ld
ld--help
(或clang版本使用的链接器),您将找到文档。

请记住,并非所有标志都是以这种方式传递给链接器的(-l可能是为了与gcc编译器兼容而传递的,如上所述)。要确保传递了选项,请使用clang的
-Wl
选项。

不幸的是,clang似乎没有关于
-l
的文档。但是,
clang
试图用它的命令行语法和选项模仿
gcc
,而gcc确实记录了它: