【问题标题】:Makefile including SDL包含 SDL 的 Makefile
【发布时间】:2017-01-24 19:16:09
【问题描述】:

我最近更改了发行版(从 linux 到 mac)。 因为我的项目的 Makefile 有问题。

Fatal error: <SDL/SDL.h> file not found

当我直接在我的 .h 中以绝对方式编写 SDL 的路径时,它可以工作。 但是没有Makefile,我不明白为什么。

GRAPH_FLAGS + = -I/usr/local/include -L/usr/local/lib -lncurses -lSDLmain -lSDL -lSDL_image

$(GRAPH_NAME):  $(GRAPH_OBJS)
        $(CC) -o $(GRAPH_NAME) $(GRAPH_OBJS) $(GRAPH_FLAGS)

【问题讨论】:

  • 看起来您在链接时添加了-I/usr/local/include,但在编译时是必需的。
  • 我刚刚尝试了一个 cc test.c -I/usr/lib/include 它适用于 test.c:#include int main() {return 0;}

标签: c macos makefile path sdl


【解决方案1】:

使用pkg-config 获取正确的包含路径:

GRAPH_FLAGS += `pkg-config --cflags sdl2` `pkg-config --libs sdl2` -lncurses ...

【讨论】:

    【解决方案2】:

    感谢您的回答,我找到了解决方案。 这都是愚蠢的,我的makefile不理解GRAPH_FLAGS
    我已经更改了基本的CFLAGS,我不知道它是否来自我的 Make 版本,但它仍然非常神秘。
    我设法安排了我的 makefile,因为它编译了几个程序。
    我也按照建议去了 SDL2。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-24
      • 1970-01-01
      • 1970-01-01
      • 2011-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多