Code::Blocks для Mac OS X и SDL

Пришлось немного повозиться, что бы заставить работать данную связку. Итак, приступим:

  1. Из списка “Link libraries” удаляем все библиотеки. Надеюсь, в будущих версиях Code::Blocks это поправят.
  2. В “Other linker options” нужно прописать “-framework SDL -framework Cocoa -framework SDL_image -framework SDL_mixer -framework OpenGL”. Ну или те библиотеки, которые вам нужны.
  3. Добавляем к проекту два файла SDLMain.h и SDLMain.m. В свойствах файла SDLMain.m указываем “Compile file” и “Link file”.
  4. В опциях проекта снимаем галку “Strip all symbols from binary” Это параметр -s компилятора. Если этого не сделать, то при попытке запуска приложения получим ошибку:
    dyld: lazy symbol binding failed: lazy pointer not found
    dyld: lazy pointer not found
    Trace/BPT trap
  5. После компиляции можно вручную выполнить strip.
  6. Думаю, что стоит написать скрипт, который будет после компиляции автоматически делать бандл.

Полезные ссылки:

Leave a Reply

Your email address will not be published. Required fields are marked *