Link 存档文件中的 SDL
Link SDL in archive file
我有一个项目,用于嵌入式 STM32。
我有一些代码 "strategy" 用于确定机器人应该去哪里。该策略使用 "pathfinding" 库。
后者可以使用SDL 进行调试(而且很酷:))。它使用 USE_SDL 标志来包含(或不包含)sdl 源文件并使用(输出)SDL gcc 标志进行编译。
现在我创建了一个 .a 存档文件,其中包含寻路库,稍后将 link 与策略目标文件一起编辑。没有 SDL 也能正常工作。
我希望策略项目完全独立于 SDL,即使在 makefile 中也是如此。
所以我想 "link" .a 文件中的 SDL 库,然后 link 它与策略文件。
我如何 link 带有寻路库的 SDL,而不必在策略中知道它 files/makefile?
谢谢:)
您不能 link 库到库。 (静态)库(我从您选择的标签中得出结论,我们正在谈论静态库)只是目标文件容器。
你可以做的(虽然如果这些库来自外部源并且你希望更新它并不实用)是从两个库中提取所有目标文件并将它们塞入一个新库中 linking反对未来:
ar x lib1.a
ar x lib2.a
ar rv new_lib.a *.o
ranlib new_lib.a
我有一个项目,用于嵌入式 STM32。
我有一些代码 "strategy" 用于确定机器人应该去哪里。该策略使用 "pathfinding" 库。
后者可以使用SDL 进行调试(而且很酷:))。它使用 USE_SDL 标志来包含(或不包含)sdl 源文件并使用(输出)SDL gcc 标志进行编译。
现在我创建了一个 .a 存档文件,其中包含寻路库,稍后将 link 与策略目标文件一起编辑。没有 SDL 也能正常工作。
我希望策略项目完全独立于 SDL,即使在 makefile 中也是如此。 所以我想 "link" .a 文件中的 SDL 库,然后 link 它与策略文件。
我如何 link 带有寻路库的 SDL,而不必在策略中知道它 files/makefile?
谢谢:)
您不能 link 库到库。 (静态)库(我从您选择的标签中得出结论,我们正在谈论静态库)只是目标文件容器。
你可以做的(虽然如果这些库来自外部源并且你希望更新它并不实用)是从两个库中提取所有目标文件并将它们塞入一个新库中 linking反对未来:
ar x lib1.a
ar x lib2.a
ar rv new_lib.a *.o
ranlib new_lib.a