Marble on android compilation problem
Dennis Nienhüser
nienhueser at kde.org
Fri Feb 3 15:06:12 UTC 2017
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/toolchain/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_64/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_64/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/include
> -isystem
>
> /home/jean/Android/Sdk/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-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