每次尝试编译使用SDL的程序时,它都会给我一个
"/Applications/Xcode.app/Contents/Developer/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
"/Applications/Xcode.app/Contents/Developer/usr/bin/make" -f nbproject/Makefile-Debug.mk dist/Debug/GNU-MacOSX/testProgram
mkdir -p dist/Debug/GNU-MacOSX
g++ -o dist/Debug/GNU-MacOSX/testProgram build/Debug/GNU-MacOSX/Window.o build/Debug/GNU-MacOSX/main.o -L/Library/Frameworks/SDL.framework -L/Library/Frameworks/SDL2.framework
Undefined symbols for architecture x86_64:
"_SDL_Init", referenced from:
Window::startWindow() in Window.o
"_SDL_Quit", referenced from:
Window::exitWindow(bool) in Window.o
"_SDL_SetVideoMode", referenced from:
Window::startWindow() in Window.o
"_main", referenced from:
implicit entry/start for main executable
(maybe you meant: _SDL_main)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [dist/Debug/GNU-MacOSX/testProgramError 1
make[1]: *** [.build-conf] Error 2
我在mac-OSX上使用netbeans(不是Xcode,因为您不能制作跨平台应用程序。)>
[每次尝试编译使用SDL的程序时,它都会给我一个“ /Applications/Xcode.app/Contents/Developer/usr/bin/make” -f nbproject / Makefile-Debug.mk QMAKE = SUBPROJECTS =。 build-conf“ / ...
将SDL库与-lSDL
链接
我浪费了很多时间试图让SDL2在Xcode中工作。尝试将Eclipse与C ++插件一起使用,在MacPorts上安装SDL2,将C ++编译器设置为包括“ / opt / local / include / SDL2”,并将“库”路径设置为“ / opt / local / lib”,并将“库”设置为“ SDL2” ”。我在OSX Sierra上,因此SDL下载到与Mavericks等早期版本不同的路径。您可以使用用于头文件的终端命令“ sdl2-config --cflags”和用于库的“ sdl2-config --libs”找到补丁。我不喜欢破解库的核心文件,所以我不会弄混makefile之类的东西。希望有帮助。
尝试在编译命令中添加以下标志:
我没有使用osx,因此可能有所不同。但是对于Linux,我们需要在链接器的参数中添加`sdl2-config --cflags --libs`
。
您可能必须在MacOS上指定整个路径: