gpt4 book ai didi

c++ - SDL 在 OSX lion 上与终端/g++ 链接错误

转载 作者:行者123 更新时间:2023-11-30 03:00:55 24 4
gpt4 key购买 nike

今天早上我在使用 Sublime Text 和终端学习 C++ 一段时间后安装了 OSX Lion 和 Xcode 以使用 SDL,但是我在尝试在终端中编译时遇到了一些问题,这是我的代码。

#include "SDL/SDL.h"

int main(int argc, char* args[])
{
//Start SDL
SDL_Init(SDL_INIT_EVERYTHING);

//Quit SDL
SDL_Quit();

return 0;
}

我将 SDL.framework、SDL_mixer.framework 和 devel-lite 放入我的 Library 文件夹中,然后使用 Macports 获取 SDL,当它不起作用时,后者没有帮助。

当我使用“g++ sdltest.cpp -o sdltest -lSDL”时,我得到以下结果 - “ld:找不到 -lSDLcollect2 的库:ld 返回 1 退出状态”。有什么办法可以使它正常工作吗?

另外,出于兴趣,如果我在格式化我的硬盘驱动器并重新安装 OSX Lion 和 XCode(我正在考虑尽快这样做)之后对 SDL 进行“全新安装”,最好的方法是什么关于它?我发现的所有指南都遇到了错误(这对我来说绝对是个问题,我只需要找到最容易理解的指南)并且其中很多似乎是为使用 Xcode 而不是文本编辑器和终端。谢谢。

最佳答案

您应该使用包含的 sdl-config(或 SDL2 的 sdl2-config)文件生成 g++ 的包含和库参数。例如,由于我在 OSX 上通过 Homebrew 使用 SDL2,因此:

g++ sdltest.cpp -o sdltest `sdl2-config --cflags` `sdl2-config --lib`

转换为并运行:

g++ sdltest.cpp -o sdltest -I/usr/local/include/SDL2 -D_THREAD_SAFE -L/usr/local/lib -lSDL2

对于带有 sdl-config 的 SDL 1.x 应该工作相同,并且还有一个“--static-libs”选项,在我的选项中给出:

-L/usr/local/lib -lSDL2 -lm -liconv -Wl,-framework,OpenGL -Wl,-framework,ForceFeedback -lobjc -Wl,-framework,Cocoa -Wl,-framework,Carbon -Wl,-framework,IOKit -Wl,-framework,CoreAudio -Wl,-framework,AudioToolbox -Wl,-framework,AudioUnit

关于c++ - SDL 在 OSX lion 上与终端/g++ 链接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11570658/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com