gpt4 book ai didi

c - AM_LDFLAGS 和 LDFLAGS 有什么区别

转载 作者:太空狗 更新时间:2023-10-29 16:06:45 25 4
gpt4 key购买 nike

我想知道 AM_LDFLAGS 和 LDFLAGS 之间的区别,因为我遇到了错误

error: AM_LDFLAGS must be set with '=' before using '+='

当我在 foreach 循环中使用 AM_LDFLAGS 时我的make文件代码如下:

program_INCLUDE_DIRS := /usr/bin/PR__bin

program_LIBRARY_DIRS := /usr/lib/PR__lib

CFLAGS += $(foreach includedir,$(program_INCLUDE_DIRS),-I$(includedir))

AM_LDFLAGS += $(foreach librarydir,$(program_LIBRARY_DIRS),-L$(librarydir))

最佳答案

_I want to know what is the difference between AM_LDFLAGS and LDFLAGS_

LDFLAGS是从Autoconf继承的变量,AM_LDFLAGS是automake定义的变量。

根据汽车制造商manual page ,

This is the variable the Makefile.am author can use to pass in additional linker flags. In some situations, this is not used, in preference to the per-executable (or per-library) _LDFLAGS.

但是,重新报错,按照提供的信息here ,它看起来像是变量使用的问题。 Automake 要求必须先将变量设置为一些 值,然后才能附加

解决此问题的正确方法与 other answer 中提到的方法相同由 Etan Reisner 提供,只需在循环之前显式设置 AM_LDFLAGS,例如

AM_LDFLAGS =     // which "sets" the AM_LDFLAGS

然后做

AM_LDFLAGS += $(foreach librarydir,$(program_LIBRARY_DIRS),-L$(librarydir))

关于c - AM_LDFLAGS 和 LDFLAGS 有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27655278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com