私は非常にシンプルなSDLプログラムを動かそうとしてきました。私はMac OS X Lionを使用しています。 SDLがSnow Leopardで動作するようになっていますが、ライオンで作業したくないようです。私は現在、コメントしている#ifdefのもののコメントを解除した場合、Mac OS XでSDLを設定するXCodeを搭載したLion 4
Undefined symbols for architecture x86_64:
"_main", referenced from:
start in crt1.10.6.o
(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)
:私は(Xcodeの4.1で)このコードをコンパイルしようとすると
#include <iostream>
#include "SDL/SDL.h"
using namespace std;
/*
#ifdef main
# undef main
#endif
*/
int main(int argc, char* args[])
{
SDL_Surface* hello = NULL;
SDL_Surface* screen = NULL;
SDL_Init(SDL_INIT_EVERYTHING);
screen = SDL_SetVideoMode(640, 480, 32, SDL_SWSURFACE);
hello = SDL_LoadBMP("hello.bmp");
SDL_BlitSurface(hello, NULL, screen, NULL);
SDL_Flip(screen);
SDL_Delay(2000);
SDL_FreeSurface(hello);
SDL_Quit();
return 0;
}
それは私に、このエラーを与える:これまでのところ私はこれを持っていますプログラムはコンパイルされますが、SDL_SetVideoMode行でSIGABRTを受け取ります。それは、私が別のプログラムで見たものをコメントした、私はそれを持っているかどうかわからない。
どうすればこの問題を解決できますか?
プログラムをコンパイル/リンクするためにXCodeが発行するコマンドを提供できますか? (#ifdefのものを取り除いてください。) –
@BrettHaleどうすればそのコマンドを見つけるのか分かりません。 C++ Editでコマンドラインアプリケーションテンプレートのデフォルトを使用しています。私が見つけたと思う:http://pastebin.com/zprm01Kp – Cole