Нет stdout.txt с SDL
Я работаю над небольшой игрой на C ++ с SDL2, используя Code :: Blocks 12.11 под Windows 7. Я использую компилятор mingw32-gcc и скачал стандартный скомпилированный дистрибутив Windows SDL2 (сейчас 2.0.1) и использую i686 -w64-mingw32 версия. Пока все работает, я получаю графический вывод и расширение SDL_ttf тоже работает.
Единственная вещь, которая никогда не работала с самого начала - это получение моего стандартного вывода в текстовом файле из SDL, как и предполагалось:
Независимо от того, что я делаю, я НИКОГДА не получаю ни stdout.txt, ни stderr.txt, ни один файл, созданный ни разу.
Файлы также не создаются во время выполнения и удаляются при закрытии программы, они вообще никогда не создаются.
Когда я компилирую свою программу как консольное приложение, я получаю вывод ошибки SDL в этой консоли, но не cout или printf или fprintf (stdout ...) вообще (пробовал все три).
При программировании чего-либо без SDL консольный вывод stdout работает нормально.
Таким образом, проблема не в том, чтобы перенаправить стандартный вывод на консоль, что является обычным вопросом о SDL и стандартном выводе, проблема в том, что я даже не записываю свои выходные данные в соответствующие файлы, как предполагалось.
Это происходит как с SDL 2.0.0, так и с SDL 2.0.1, как скомпилированными, так и неизмененными.
Вот так выглядит моя основная функция. myGame.GameStart () запускает все, включая очистку. Я довольно новичок в C ++, поэтому здесь также может быть какая-то странная ошибка.
#include "SDL.h"
#include "SDL_ttf.h"
int main(int argc, char* argv[]) {
TTF_Init();
SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO|SDL_INIT_TIMER|SDL_INIT_EVENTS);
SDL_LogSetAllPriority(SDL_LOG_PRIORITY_WARN);
MyGameClass myGame;
myGame.GameStart();
SDL_Quit();
TTF_Quit();
return 0;
}
Я компилирую с -g и -std = c ++ 0x.
Я связываю mingw32, SDL2main, SDL2, SDL2_ttf (в таком порядке) и mwindows.
Чтобы увидеть консоль, я компилирую как консольное приложение и использую опцию Pause, когда выполнение заканчивается.
Я довольно новичок в Code :: Blocks, и я не углубился в различные опции для компилятора и отладчика.
У кого-нибудь есть идея? Я ссылаюсь в неправильном порядке? Связывать не те вещи? Моя основная функция неверна?