【发布时间】:2013-06-11 19:18:01
【问题描述】:
在 GNU Make 文档中,变量 LDLIBS 和 LOADLIBES 没有记录在其对应的section 中。我read 这些变量仅出于兼容性目的而存在,并且它们是等价的(相同的含义)。但是,LDLIBS 仍然被广泛使用。
是否可以说 LDLIBS 是一个已弃用的变量,或者使用它是否安全?如果不是,为什么它的文档忽略了 LDLIBS?
【问题讨论】:
在 GNU Make 文档中,变量 LDLIBS 和 LOADLIBES 没有记录在其对应的section 中。我read 这些变量仅出于兼容性目的而存在,并且它们是等价的(相同的含义)。但是,LDLIBS 仍然被广泛使用。
是否可以说 LDLIBS 是一个已弃用的变量,或者使用它是否安全?如果不是,为什么它的文档忽略了 LDLIBS?
【问题讨论】:
似乎LOADLIBES 已被弃用,但LDLIBS 不是。因此,manual 说:
LDFLAGS: 在编译器应该提供的时候提供额外的标志 调用链接器ld,例如-L。库 (-lfoo) 应该是 而是添加到LDLIBS变量中。
LDLIBS: 编译器的库标志或名称 应该调用链接器ld。LOADLIBES已弃用(但 仍然支持)替代LDLIBS。非库链接器标志, 比如-L,应该放在LDFLAGS变量中。
【讨论】:
LDFLAGS) 引导交通 (LDLIBS)。也许你可以想出一个更好的类比/助记词,它是故意没有灵感的。
GNU make 手册在http://www.gnu.org/software/make/manual/html_node/Implicit-Variables.html 中说:
下表描述了一些更常用的预定义变量。此列表并不详尽
【讨论】: