mcpipp_tmb


Minecraft: Pi Edition: RebornのSDKを使ってみるの記事でMinecraft: Pi Edition: Reborn(以後、MCPI++と略す)のSDKを使うと記載したが実際は使用していない。

今回はSDKにあるライブラリを呼び出せるようにしてみる。




先にCMakeをインストールしておく。

CMake - Wikipedia

$ sudo apt install cmake

ファイルの構成を下記のようにする

.
├── CMakeLists.txt
└── src
        └── hello.cpp

hello.cppでSDKのライブラリのincludeを書いてみる。


src/hello.cpp

#include <libreborn/libreborn.h>

__attribute__((constructor)) static void init() {
    // do nothing
}

CMakeLists.txt

cmake_minimum_required(VERSION 3.16.0)

if(NOT MODS_BEING_BUILD STREQUAL "all")
    set(CMAKE_C_COMPILER arm-linux-gnueabihf-gcc)
    set(CMAKE_CXX_COMPILER arm-linux-gnueabihf-g++)
endif()

# Start Project
project(hello)

# Include SDK
include("$ENV{HOME}/.minecraft-pi/sdk/lib/minecraft-pi-reborn-client/sdk/sdk.cmake")

# Build the jetpack
add_library(hello SHARED src/hello.cpp)
target_link_libraries(hello mods-headers reborn-patch symbols misc mods-headers media-layer-core)

これでSDKを使用する準備が出来た。


端末を開き、

$ cmake -S . -B build
$ cmake --build build
$ sudo mv build/libhello.so ~/.minecraft/mods/

を実行した後、MCPI++を実行してみて、


mcpipp_tmb


MCPI++が起動することを確認して終了。