【问题标题】:How to get a Makefile to use the linker flags defined in a separate txt file?如何让 Makefile 使用在单独的 txt 文件中定义的链接器标志?
【发布时间】:2022-06-14 20:51:59
【问题描述】:

我正在使用简单的 Makefile 在链接阶段编译和构建需要一些共享库(.so)的 C 代码。我知道我可以使用变量 LDFLAGS 传递这些库标志,并将其放在 Makefile 中的 OBJ 文件之后并让它工作。 但是,在我的情况下,我需要编译需要不同共享库的代码的几个变体,以便在对 Makefile 进行最小更改的情况下进行链接。

我看到了一个 github 提交,如下所示,他们似乎使用了一个 txt 文件(名为 ldflags.txt),在其中放置了所需的标志,而 Makefile(这是我需要帮助的地方)似乎神奇地使用了此文件用于链接。 https://github.com/arduino/ArduinoCore-nRF528x-mbedos/blob/master/variants/ARDUINO_NANO33BLE/ldflags.txt

我的问题是,我们有没有办法在单独的文件中定义 LDFLAGS 以便 Makefile 可以使用它们?如果可能的话,请你分享一个简单的例子。

谢谢。

【问题讨论】:

    标签: c++ makefile


    【解决方案1】:

    如果您使用gcc,您可以通过@file 选项引入命令行开关、定义等,该选项在此处的最后一段中描述:https://gcc.gnu.org/onlinedocs/gcc/Overall-Options.html#Overall-Options。虽然我不完全确定它看起来像 clang 具有相同的行为。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-30
      • 2014-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多