Jetson NanoでOpenHSPのコンパイル

※この手順ではhsp3dishのweb出力のビルドは飛ばしています。

コンパイルに使われるパッケージのインストールコマンド

sudo apt-get update && sudo apt-get install libgtk2.0-dev && sudo apt-get install libglew-dev && sudo apt-get install libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev && sudo apt-get install libgles2-mesa-dev libegl1-mesa-dev && apt-get install -y libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev

OpenHSPのソースのクローンとコンパイルのコマンド

git clone https://github.com/onitama/OpenHSP.git
cd OpenHSP

OpenGLを使っているソースコードをjetsonにインストールされているバージョンに合わせて書き換える。

vi src/hsp3dish/emscripten/hgiox.cpp

#if defined(HSPLINUX) || defined(HSPEMSCRIPTEN)
#ifdef HSPRASPBIAN
/* #include "bcm_host.h" */
/* #include "GLES/gl.h" */
#include "GL/gl.h"
#include "GL/glut.h"
#include "EGL/egl.h"
#include "EGL/eglext.h"
#include "SDL/SDL.h"

libpngのコンパイルフラグをarm用に合わせる。

vi makefile

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

ビルド

make

サンプルの実行

#echo DISPLAY
#export DISPLAY=:0.0
./hspcmp -d -i -u sample/hsplogo.hsp
cd sample
../hsp3dish hsplogo.ax

その他

.hspファイルのコンパイルシェル

#!/bin/sh

INSTALL_DIR=$(cd $(dirname $0); pwd)
SOURCE_DIR=$(cd $(dirname $1); pwd)

cd ${INSTALL_DIR}
./hspcmp -d -i -u ${SOURCE_DIR}/$1

.axファイル実行シェル

#!/bin/sh

INSTALL_DIR=$(cd $(dirname $0); pwd)
SOURCE_DIR=$(cd $(dirname $1); pwd)

${INSTALL_DIR}/hsp3dish $1

Dockerファイルを作りました。

https://hub.docker.com/repository/docker/sntulix/jetson_nano-openhsp

参考

コメントをどうぞ

メールアドレスが公開されることはありません。 が付いている欄は必須項目です