我用mac写c++ SDL2程序,但是报错Undefined symbols for architecture arm64

我用mac写c++ SDL2程序,但是报错Undefined symbols for architecture arm64
#include 
#include 
#include 
using namespace std;

int main(int argc,char* argv[])
{
  if (SDL_Init(SDL_INIT_VIDEO) > 0)
    {
      cout << "good!" << endl;
    }
  return 0;
}

结果发生了以下报错:
Undefined symbols for architecture arm64:
"_SDL_Init", referenced from:
_main in new-3d6756.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

请问这是为什么?急,谢谢!

看报错是arm64架构,是版本不对吗?确保你安装的是适合arm64的版本,然后加上编译标志类似 sdl2-config --cflags --libs
看这个现象一样 https://bbs.csdn.net/topics/394381583