Marble on android compilation problem
Jean GUARDIA
jean.guardia at laposte.net
Sun Feb 5 09:50:22 UTC 2017
Many thanks Dennis, for your response.
As I need really,really quick this, I managed to compile marble.
Here what i have done to make it work. It is absolutely ugly but it worked
for me.
In the NDK, i link every x86 folders as if they where arm. and link every
compiler files as if they were arm. Then I compile and it produces the build
with no more errors. I know it's really ugly, bad, and dirty ...
I do this because it was the mess and whatever parameter I give, compiler or
libs were not found.
In a later mail, i will give you all the tests i've made
One more time, thank you for your support and your quick response.
Sincerely yours. Jean Guardia
Le vendredi 3 février 2017, 16:06:12 CET Dennis Nienhüser a écrit :
> Hi Jean,
>
> thanks for the nice mail with detailled information, appreciated.
>
> I don't see any hardcoded arm values neither in Marble nor in the
> Android toolchain from extra-cmake-modules. I wonder if the problem
> originates from an early cmake call where not all x86 values had been
> set. Can you run 'make rebuild_cache' in the build directory and test if
> that makes linking work afterwards?
>
> Regards,
> Dennis
>
> Am 01.02.2017 10:37, schrieb jean.guardia at laposte.net:
> > Hello, first of all, many thanks for the great work you've done on kde
> > and particularily on porting some maps on android
> >
> > I don't know if this mail is the right place to ask a question.
> >
> > I manage to buil successfully kde marble for android (arm version) and
> > it works great.
> >
> > However one of my peripheral is using android on a x86 processor. I
> > try to compile
> >
> > for this targer but i get some errors. I'm pretty sure i'm missing
> > something
> >
> > here's the command line I use:
> > cmake ../sources -DCMAKE_INSTALL_PREFIX=/home/jean/Android/marble/x86
> > -DECM_ADDITIONAL_FIND_ROOT_PATH=${Qt5_android}
> > -DANDROID_ARCHITECTURE=x86 -DANDROID_TOOLCHAIN=x86 -DANDROID_ABI=x86
> > -DCMAKE_TOOLCHAIN_FILE="/home/jean/marble/sources/extra-cmake-modules/tool
> > chain/Android.cmake"
> >
> >
> > But i get an error :
> >
> > -- Check for working C compiler:
> > /home/jean/Android/Sdk/ndk-bundle//toolchains/x86-4.9/prebuilt/linux-x86_6
> > 4/bin/x86-gcc -- broken
> > CMake Error at
> >
> > /usr/share/cmake-3.5/Modules/CMakeTestCCompiler.cmake:61 (message):
> > The C compiler
> >
> > "/home/jean/Android/Sdk/ndk-bundle//toolchains/x86-4.9/prebuilt/linux-x86_
> > 64/bin/x86-gcc">
> > is not able to compile a simple test program.
> >
> > It fails with the following output:
> >
> > Change Dir: /home/jean/marble/build_x86/CMakeFiles/CMakeTmp
> >
> > Run Build Command:"/usr/bin/make" "cmTC_e379f/fast"
> >
> > /usr/bin/make -f CMakeFiles/cmTC_e379f.dir/build.make
> > CMakeFiles/cmTC_e379f.dir/build
> >
> > make[1] : on entre dans le répertoire
> > « /home/jean/marble/build_x86/CMakeFiles/CMakeTmp »
> >
> > Building C object CMakeFiles/cmTC_e379f.dir/testCCompiler.c.o
> >
> > /home/jean/Android/Sdk/ndk-bundle//toolchains/x86-4.9/prebuilt/linux-x86_6
> > 4/bin/x86-gcc
> >
> > --sysroot=/home/jean/Android/Sdk/ndk-bundle//platforms/android-14/arch-arm
> >
> > -DANDROID -isystem
> >
> > /home/jean/Android/Sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/includ
> > e
> >
> > -isystem
> >
> > /home/jean/Android/Sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/a
> > rmeabi-v7a/include>
> > -o CMakeFiles/cmTC_e379f.dir/testCCompiler.c.o -c
> > /home/jean/marble/build_x86/CMakeFiles/CMakeTmp/testCCompiler.c
> >
> > Linking C executable cmTC_e379f
> >
> > /usr/bin/cmake -E cmake_link_script
> >
> > CMakeFiles/cmTC_e379f.dir/link.txt
> >
> > --verbose=1
> >
> > It seems that linking is always done with arm libs, which is wrong.
> >
> > maybe can you help if you get enough time for that.
> >
> > Thanks a lot
> >
> > Sincerely yours Jean Guardia
More information about the KDE-Android
mailing list