【发布时间】:2012-09-28 11:32:33
【问题描述】:
我正在使用 GCC 编译器(在 Linux 上)学习 C。
我最近从使用 Code::Blocks 转移到使用 Geany,我注意到 Geany 不会自动链接到任何所需的库。例如,当我在 Code::Blocks 中使用 #include <math.h> 时,它会在我编译时自动链接到相应的数学库中。但是,Geany 没有这样做,我必须手动添加构建命令,例如数学库的 -lm,才能使编译工作。
但是,我注意到包含 string.h 标头并使用其中的函数可以正常编译,而无需在字符串库中进行链接。这是为什么? string.h 标头是否定义了所有函数本身?有人可以解释一下为什么有些库似乎需要链接,而另一些则不需要。
类似地,有没有人告诉Geany 自动链接所需的库?这将使编译变得容易得多。
【问题讨论】:
标签: c compilation linker static-libraries geany