So I'm trying to build from source so that I can test reverting a couple of commits that broke the JIT Recompiler on Android devices. Unfortunately there's very little instruction on building from source for Android and I'm running into issues.
I'm building on Ubuntu 14.04 LTS.
I've been able to get stuff building to a certain point, the steps being as follows (error in output):
1. Install Android SDK and Android NDK (home directory) and set paths.
2. git clone git@github.com:dolphin-emu/dolphin.git
3. cd dolphin
4. mkdir build
5. cd build
6. cmake -DANDROID=True -DCMAKE_TOOLCHAIN_FILE=../Source/Android/android.toolchain.cmake -DANDROID_NDK=/home/heinermann/android-ndk-r10d -DCMAKE_BUILD_TYPE=Release -DANDROID_ABI="armeabi-v7a" -DANDROID_NATIVE_API_LEVEL=17 -DENABLE_PCH=False ..
7. make
Output (end):
Running make again after this error indicates that main was 100% built.
So what I want to know is...
1. Did the build succeed or fail? (is that copy crucial? or is the second make falsely reporting a successful build?)
2. Where do I go from here to compile an APK file? Do I need to find and copy libmain.so to a subdirectory of Source/Android/ and run gradle there? Is there a script that buildbot uses to methodically build the Android APK file (and where would I find it)?
Note: -DENABLE_PCH=False is used because of this error:
I'm building on Ubuntu 14.04 LTS.
I've been able to get stuff building to a certain point, the steps being as follows (error in output):
1. Install Android SDK and Android NDK (home directory) and set paths.
2. git clone git@github.com:dolphin-emu/dolphin.git
3. cd dolphin
4. mkdir build
5. cd build
6. cmake -DANDROID=True -DCMAKE_TOOLCHAIN_FILE=../Source/Android/android.toolchain.cmake -DANDROID_NDK=/home/heinermann/android-ndk-r10d -DCMAKE_BUILD_TYPE=Release -DANDROID_ABI="armeabi-v7a" -DANDROID_NATIVE_API_LEVEL=17 -DENABLE_PCH=False ..
7. make
Output (end):
Code:
Linking CXX static library libcore.a
[100%] Built target core
Scanning dependencies of target uicommon
[100%] Building CXX object Source/Core/UICommon/CMakeFiles/uicommon.dir/UICommon.cpp.o
Linking CXX static library libuicommon.a
[100%] Built target uicommon
Scanning dependencies of target main
[100%] Building CXX object Source/Core/DolphinWX/CMakeFiles/main.dir/Android/ButtonManager.cpp.o
[100%] Building CXX object Source/Core/DolphinWX/CMakeFiles/main.dir/MainAndroid.cpp.o
Linking CXX shared library libmain.so
cp: cannot stat ‘/libs/armeabi-v7a/libmain.so’: No such file or directory
make[2]: *** [Source/Core/DolphinWX/libmain.so] Error 1
make[1]: *** [Source/Core/DolphinWX/CMakeFiles/main.dir/all] Error 2
make: *** [all] Error 2
Running make again after this error indicates that main was 100% built.
So what I want to know is...
1. Did the build succeed or fail? (is that copy crucial? or is the second make falsely reporting a successful build?)
2. Where do I go from here to compile an APK file? Do I need to find and copy libmain.so to a subdirectory of Source/Android/ and run gradle there? Is there a script that buildbot uses to methodically build the Android APK file (and where would I find it)?
Note: -DENABLE_PCH=False is used because of this error:
Code:
Scanning dependencies of target pch
[ 24%] Building CXX object Source/CMakeFiles/pch.dir/PCH/pch.h.o
Linking FAKELANG static library libpch.a
[ 24%] Built target pch
Scanning dependencies of target audiocommon
make[2]: *** No rule to make target `/libpch.a', needed by `Source/Core/AudioCommon/CMakeFiles/audiocommon.dir/AudioCommon.cpp.o'. Stop.
make[1]: *** [Source/Core/AudioCommon/CMakeFiles/audiocommon.dir/all] Error 2
make: *** [all] Error 2