search
LoginSignup
3
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

RaspberryPi 4で HSP3を動かした話

0. あいさつ

はじめましての方は初めまして。しがない大学生のあめふりてる*と申します。
今回は、RaspberryPi 4でHSP3を動かす挑戦をしたので、それの備忘録のようなものを書いていきたいと思います。

1. 環境

今回の環境は以下の通りです。

コンピュータ : RaspberryPi 4 Model B 4GB
OS : Ubuntu 20.04.2 LTS

RaspberryPi 4にOSをインストール / セットアップするのは、こちら記事を参考にさせていただきました。
Raspberry Pi 4でUbuntuデスクトップを動かして遊ぶ-@y-tsutsuさん

2.インストールのためのセットアップ

1. gitのインストール

HSP3をインストールするために、まずはgitをインストールします。
端末を開き、以下のコマンドを打ち込んでください。

sudo apt-get install git

これで、gitがインストールされたはずです。
本来なら、ここで初期設定をするのですが、今回はこのままで問題ないので省略します。

2. HSP3のダウンロード

GitHubから、OpenHSPをクローンします。以下のコマンドを打ちましょう。

git clone http://github.com/onitama/OpenHSP

インストールが終わったら、セットアップしていきましょう。

3. 必要なパッケージのセットアップ

依存パッケージがあるのでそれのインストールをします。
以下のコマンドを順番に打っていってください。途中で、Y/nを求められますが、すべてYでOKです。

sudo apt-get update
sudo apt-get install -y libgtk2.0-dev
sudo apt-get install -y libglew-dev
sudo apt-get install -y libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev
sudo apt-get install -y libgles2-mesa-dev libegl1-mesa-dev

image.png

3. HSP3のインストール

さて、いよいよHSP3をインストールしていきます。
まずは、ディレクトリを移動します。

cd OpenHSP

その後、makefileを書き換えます。
PaspberryPi 4 Model Bは、arm64アーキテクチャなので、書き換えないと動かないようです。ここでかなり苦労しました。
CFLAGS_GPに「-DPNG_ARM_NEON_OPT=0」というオプションを一つ追加します。

ファイルからOpenHSPのあるフォルダに移動して、makefileをテキストエディタで開きましょう。その後、CFLAGS_GPを書き換えます。

~略~

CFLAGS_GP = -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPDISHGP -DHSPLINUX -DHSPDEBUG -DPNG_ARM_NEON_OPT=0 -I src/hsp3dish/extlib/src  -I src/hsp3dish/extlib/src/glew -I src/hsp3dish/gameplay/src -std=c++11

~略~

image.png

書き換えが終わったら、保存して、端末に戻ります。
その後、以下のコマンドを打ちましょう。

make

30分ぐらい時間がかかるので、珈琲を飲みながら待ちましょう。
エラーが出なければ、インストールできています!お疲れさまでした。
image.png

4. サンプルコードを動かしてみる

私の環境では、コマンドによるコンパイルがうまくいかなかったので、エディタから実行させます。
以下のコードを打ちましょう。

./hsed sample/block3.hsp

その後、出てきたエディタを選択し、F5を押しましょう。
すると、ブロック崩しができます!
image.png

INF.最後に

最後まで読んでいただきありがとうございます。
私自身、Linuxに不慣れだったり、アーキテクチャの理解が不十分だったりでなかなか難しかったのですが、Linuxで動かせるようになったのはいいことです!
今後、raspberryPiをアプリケーションサーバにして、何か面白いことができたらなぁと考えています。

この記事がよかったらLGTMやストックお願いします。それではまたどこかで。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
3
Help us understand the problem. What are the problem?