我使用cmake并获取库。
libSDL2.a
libSDL2main.a
libSDL2-2.0.so
libSDL2-2.0.so.0
libSDL2-2.0.so.0.4.0
我写main.c来测试SDL。
#include <SDL.h>
int main()
{
SDL_Init(SDL_INIT_VIDEO);
SDL_Quit();
return 0;
}
我制作了lib目录。 我移动* .a文件并包含目录。
vim main.c
mkdir lib
mv libSDL2.a libSDL2main.a ./lib
mv /home/gakgu/다운로드/SDL2-2.0.4/include ./
然后尝试编译。
gcc -W -Wall -o main main.c -Iinclude -Llib -lSDL2 -lSDL2main
有什么问题?
答案 0 :(得分:1)
您必须在其他库之前添加 - lpthread
以链接线程支持。
您还应该启用更多警告选项: - Wextra
- pedantic
所以
gcc -W -Wall -Wextra -pedantic -o main main.c -Iinclude -lpthread -Llib -lSDL2 -lSDL2main