Skip to content
Go back

AGB開発環境の構築(WSL・C++の場合)

· Updated:
cmake_minimum_required(VERSION 3.18)

project(agb)

find_package(librom REQUIRED)
find_package(agbabi REQUIRED)
find_package(gba-hpp REQUIRED)

add_executable(agb
    src/main.cpp
)

target_compile_options(agb PRIVATE -mthumb -fconserve-stack -fomit-frame-pointer)
target_link_libraries(agb PRIVATE librom agbabi gba-hpp)
    
set_target_properties(agb PROPERTIES
    ROM_TITLE "agb"
    ROM_ID 0000
    ROM_MAKER 00
    ROM_VERSION 0
)

install_rom(agb)
  • VSCodeのlaunch.jsonでmGBAを起動するタスクを書く:
    "configurations": [
        {
            "name": "(gdb) launch",
            "type": "cppdbg",
            "request": "launch",
            "targetArchitecture": "arm",
            "program": "${command:cmake.launchTargetPath}",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerServerAddress": "localhost:2345",
            "miDebuggerPath": "${env:DEVKITARM}/bin/arm-none-eabi-gdb",
            "setupCommands": [
                {
                    "text": "shell \"mgba-qt\" -g \"${command:cmake.launchTargetPath}\" &"
                }
            ]
        },
    ]