EasyRPG / Player

RPG Maker 2000/2003 and EasyRPG games interpreter
https://easyrpg.org/player/
GNU General Public License v3.0
983 stars 186 forks source link

Android port crashes. #18

Closed fdelapena closed 10 years ago

fdelapena commented 12 years ago

It compiles fine but when executing it, it crashes on start.

Ghabry commented 11 years ago

Was able to compile it using https://github.com/pelya/commandergenius Changes files are provided here: http://www.sendspace.com/file/yip6vf (overwrite the git checkout) You can also create most of the files via build.sh but I hate this script ;)

Files in archive: project\AndroidManifest.xml project\jni\Settings.mk project\src (whole folder) project\res\values\strings.xml project\jni\application\src <- Checkout player Repo here project\jni\application\src\AndroidAppSettings.cfg project\jni\application\src\AndroidBuild.sh

Place any RPG Maker game in project\jni\application\src\AndroidData\data.zip (If ant fails place data.zip in project\assets)

Commands to execute

android update project -p project -t android-15
cd project
SDL_JAVA_PACKAGE_PATH=org_easyrpg_player
BUILD_NUM_CPUS=8 ndk-build -j8 # replace the both 8 with num of cores
ant debug
cd bin
adb install -r MainActivity-debug.apk

Then you can run the Player via Android.

I used a modified version of Player because I couldnt find iconv and expat. Maybe you get this working under Linux.

Aspect ratio is wrong, timidity warnings and crashed for me in the Title Scene, could be related to removed iconv.

<img src=http://desmond.imageshack.us/Himg35/scaled.php?server=35&filename=unbenannt3hm.png&res=landing

Ghabry commented 11 years ago

Will try to clean the mess in the original android-sdl app in fork https://github.com/Ghabry/easyrpg-android-toolchain (remove useless samples and libs + add changed files)

fdelapena commented 11 years ago

According to Pelya's README, new boost requirement will need CrystaX NDK instead of official NDK and for wide char support. However, Pelya's Boost port says it works with NDK 8 (?). I'll try again next week.

Ghabry commented 11 years ago

We use only header-only boost libs. THeir shouldnt be any compatibility problem.

fdelapena commented 11 years ago

After trying the Android build.sh made by take-cheeze, there is a build problem with Boost::Spirit. Current patch seems to be not enough. Moreover, after building the .apk there is an "Unable to load native library" error and this is harder to debug. Some strategies are available at https://en.wikibooks.org/wiki/OpenGL_Programming/Installation/Android_NDK#Unable_to_load_native_library Anybody is free to try with this.

Ghabry commented 11 years ago

isnt boost spirit optional? Only needed by Wine Registry Reader

fdelapena commented 10 years ago

Android has a new build system, but it does not support NDK yet. It's expected to be done for the next revision: http://tools.android.com/tech-docs/new-build-system/roadmap I think it's better to wait until ready, not needing to switch later.