reckfellENGINE

Code::Blocks: внешний SCons и запуск движка

Custom Makefile workflow, target-команды и выбор бинарника.

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

Code::Blocks здесь используется для C/C++ исходников Reckfell 1.0.0. SCons остаётся системой сборки. Встроенный compiler IDE или автоматически созданный Debug target не заменяют настройки SConstruct.

Проект и файлы

Создайте Empty project и проверьте фактический путь .cbp: проект должен относиться к каталогу Source с SConstruct, а не ко всей папке установленного движка. Название проекта не обязано совпадать с именем каталога. Добавьте нужные исходники через Add files recursively; само добавление не задаёт compiler defines и include paths.

В Project → Properties включите This is a custom Makefile; в Project → Build options → Make commands замените стандартный вызов make командой SCons. Этот механизм описан в руководстве Code::Blocks, раздел 4.5. В Reckfell он используется для внешнего SCons, а не для генерации нового Makefile.

Команда сборки

Подготовьте compiler/SDK и зависимости. Для каждого target IDE задайте явные platform/target/arch и запускайте команду из Source. Пример Windows x86_64 editor:

Командная строка
scons platform=windows target=editor arch=x86_64 dev_build=yes debug_symbols=yes

Поле Build project/target должно вызывать эту команду, а не старое $make -f $makefile $target. Проверьте также команды отдельного target и Rebuild: не оставляйте там стандартный make или вторую неполную конфигурацию. В журнале сборки должны быть ваши SCons arguments, а результатом — успешные compile/link выбранного target.

Если scons не найден, используйте доступный executable/launcher и окружение, в котором работает терминальная сборка. cmd /c нужен для соответствующего Windows launcher или shell-конструкций, а не как обязательный префикс любой команды на всех ОС. Путь с пробелами оформляйте по правилам используемого launcher; проверяйте реально исполненную строку в журнале.

Clean не нужен перед обычным Run. Если он настроен, вызывайте SCons --clean с теми же build options; не заменяйте его удалением bin или Runtime. Не включайте compiledb_gen_only=yes или vsproj_gen_only=yes в обычную сборку: это генерация метаданных, не executable.

Запуск и debugger

После успешной сборки в Project → Properties → Build targets выберите настоящий файл из Source/bin в Output filename. Отключите автоматическое добавление префикса/расширения, если оно меняет выбранный путь. Изменение этого поля указывает IDE, что запускать; оно не переименовывает SCons output.

Задайте параметры запуска: --path к каталогу с project.reckfell, плюс --editor для редактора. Execution working dir относится к запускаемой программе и не исправляет неверный working directory команды сборки. Проверьте отдельные настройки обоих этапов.

Выберите debugger, совместимый с compiler и форматом символов. Наличие MinGW в комплекте IDE не доказывает совместимость с установленным MSVC-бинарником. Нужны matching binary/symbols/source и выполняемая строка; при Attach сверяйте executable path и аргументы процесса. Запуск игры и запуск редактора могут создавать разные PID.

Диагностика

СимптомЧто проверить
Выполняется make вместо SConsMake commands проекта, отдельного target и Rebuild
SConstruct не найденКоманда сборки работает из Source
Код виден, но анализатор ошибаетсяInclude paths/defines именно выбранной конфигурации; дерево файлов их не заменяет
Запускается старый файлOutput filename и свежий результат compile/link
Открывается Project ManagerЯвный --path; --editor для редактора
Debugger не читает символыФормат символов, compiler/toolchain и соответствие бинарнику

Для C/C++ используйте Source/.clang-format. .editorconfig требует UTF-8 и LF; C/C++ используют табуляцию, Python/SConstruct/SCsub — пробелы. Не форматируйте весь репозиторий ради настройки IDE.

Границы проверки

Параметры SCons, схема имени бинарника и правила форматирования сверены с исходниками. Сохранена отдельная CLI-проверка --path установленного Runtime. Проект .cbp, GUI, build/rebuild/clean и debugger в Code::Blocks не запускались. Команда — пример конфигурации, не отчёт об успешной сборке. Source, Runtime и SDK не менялись.

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

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

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

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