reckfellENGINE

Xcode: SCons и нативная отладка

Внешняя сборка, executable, аргументы проекта и breakpoint.

На этой странице

Xcode здесь используется как оболочка для SCons и нативного LLDB. Он не заменяет build-скрипты Reckfell и не является отладчиком C# по этой инструкции. Зависимости и подготовка managed-части описаны в сборке macOS.

Сначала соберите из терминала

Рабочая папка — Source, рядом с SConstruct. Для нативного редактора на Apple silicon:

Командная строка
command -v scons
scons platform=macos target=editor arch=arm64 dev_build=yes debug_symbols=yes -j4

На Intel замените arch=arm64 на arch=x86_64; ограничения renderer и SDK смотрите в руководстве сборки. Ожидаемый файл базовой конфигурации — bin/reckfell.macos.editor.dev.arm64; дополнительные модули и параметры меняют суффиксы. Выбирайте фактически полученный файл, а не старое имя tools.64. Если SCons не работает в терминале, сначала исправьте его диагностику, а не настройки Xcode.

Внешняя сборка

Создайте проект с целью External Build System, если этот шаблон доступен в вашей версии Xcode. Храните вспомогательный .xcodeproj отдельно от исходников. Настройте:

ПолеЗначение
Build ToolАбсолютный путь, выданный command -v scons. Терминальный alias не является исполняемым файлом.
DirectoryАбсолютный путь к Source, где лежит SConstruct.
Argumentsplatform=macos target=editor arch=arm64 dev_build=yes debug_symbols=yes -j4 либо ваша рабочая конфигурация.

GUI-приложение может иметь другой PATH, чем терминал. При ошибке поиска Python, SCons или SDK проверьте абсолютные пути и выбранный Xcode. Не создавайте вторую обычную compile-цель, которая собирает все .cpp движка стандартными настройками Xcode: у неё не будет правильных generated headers, модулей и defines SCons.

Навигация по исходникам и успешная сборка — разные результаты. Если индексатор подсвечивает рабочий код как ошибочный, проверьте include paths, defines и generated headers для той же конфигурации. SCons умеет генерировать compile_commands.json для инструментов, которые его поддерживают:

Командная строка
scons platform=macos target=editor arch=arm64 dev_build=yes debug_symbols=yes compiledb=yes compiledb_gen_only=yes

Эта команда генерирует базу команд; она не заменяет сборку. Само наличие JSON не означает, что Xcode импортировал его или что completion полностью настроен.

Запуск и breakpoint

В настройках scheme Xcode выберите для Run фактический executable из Source/bin, включите Debug executable и добавьте отдельными аргументами --editor, --path, абсолютный путь к папке проекта. В папке должен быть project.reckfell; передавайте папку, а не файл. Для запуска игры уберите --editor.

Эквивалент запуска редактора для указанной выше конфигурации:

Командная строка
./bin/reckfell.macos.editor.dev.arm64 --editor --path "/absolute/project"

Это пример нативной сборки без C#. Для C#-проекта используйте подготовленную конфигурацию из руководства сборки macOS и её executable. Жёсткая ссылка с новым именем не требуется: схема должна запускать свежий файл нужной архитектуры. Для .app внутренний executable называется Contents/MacOS/Reckfell.

Поставьте breakpoint в platform/macos/reckfell_main_macos.mm на входе main. Успех — остановка в этом файле с доступными локальными данными, а не только появившееся окно игры. Если attach запрещён, см. отладку macOS. Если breakpoint не разрешается, проверьте архитектуру, символы и соответствие бинарника исходникам.

Настройки сверены с исходниками Reckfell 1.0.0. Нативный интерфейс Xcode, индексирование, сборка на Mac и LLDB в этой проверке не запускались.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.