1

我有一个非常简单的 C 程序,取自 SDL 文档

#include <stdlib.h>
#include "SDL.h"

int main() {
    if (SDL_Init(SDL_INIT_AUDIO|SDL_INIT_VIDEO) < 0) {
        return EXIT_FAILURE;
    }
    atexit(SDL_Quit);
    return EXIT_SUCCESS;
}

sdl-config --cflags --libs用来为clang提供论据。它能够链接到 SDL 标头,但无法链接到 SDL 库:

/tmp/example-f2Tgg6.o: In function `main':
example.c:7: undefined reference to `SDL_Init'
example.c:8: undefined reference to `SDL_Quit'
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我试图用 gcc 编译并得到同样的问题,所以我觉得我错过了一些明显的东西。我正在运行 xubuntu 11.10,以防万一。

4

2 回答 2

0

尝试安装库。就像是sudo apt-get install libsdl1.2-dev libsdl1.2debian

于 2013-03-10T19:45:32.320 回答
0

首先,您始终可以使用 找出正确的标志,如此pkg-config所示。

然后您可以使用apt-fileGoogle 来确定您需要通过apt. 在这种情况下,请查看libsdl-*- 您可能需要基本包和-dev包。

于 2013-03-10T23:14:02.720 回答