Kirigami build instructions
Aleix Pol
aleixpol at kde.org
Sun Aug 14 19:37:17 UTC 2016
On Fri, Aug 12, 2016 at 10:26 PM, Police Terror <PoliceTerror at dyne.org> wrote:
> Thank you, I didn't realize ECM was connected to KDE. That connection
> was good. Running this command solved the problem:
>
> $ sudo apt install extra-cmake-modules
>
> Which made it available in /usr/share/ECM/toolchain/Android.cmake
>
> And now I also had to add a switch to cmake:
>
> -DANDROID_NDK=...
>
> However it is failing:
>
> -- Check for working C compiler:
> /mypath/android-ndk-r12b/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc
> CMake Error at /usr/share/ECM/toolchain/Android.cmake:113 (message):
> Couldn't find the Android NDK Root in /platforms/android-14/arch-arm
/platforms/... looks wrong, should have something before. Make sure
that your ANDROID_NDK variable is properly set. I'd suggest setting it
as an environment variable.
> Call Stack (most recent call first):
> /home/travis/src/kirigami/build/CMakeFiles/3.5.1/CMakeSystem.cmake:6
> (include)
> CMakeLists.txt:2 (project)
>
> CMakeError.log has lots of errors like:
>
> /home/travis/Downloads/android-ndk-r12b/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin/ld:
> error: cannot find -lc
> /home/travis/Downloads/android-ndk-r12b/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin/ld:
> error: cannot find -ldl
If gcc can't be found, anything won't be found. The toolchain is a package.
> So I tried defining an envvar
> SYSROOT=/mypath/android-ndk-r12b/platforms/android-14/arch-arm/ but that
> also doesn't work.
>
> Thanks for any help. I saw the Kirigami app and it looks crisp and
> beautiful. You've done a great work on these widgets. I showed it to a
> few others and they were impressed. It definitely beats Kivy.
>
> Is it possible to use Kirigami with Python for the application logic?
> The widgets are in QML, and it seems PyQt5 exists for Android too. Have
> you tried this yet?
I don't think anyone has tried yet, I'm unsure that you want to bundle
whole Python with the application, although it should be possible.
I'd look into making it possible to import a Python module from QML,
this would be interesting IMHO.
> Anyway great work! This is a milestone for Linux development. Kivy is
> slow to start and looks ugly, Qt is kind of a fudge and NDK means I have
> to write a Java UI...
>
> Do you have a way to pause the application when it is minimized?
> https://kivy.org/docs/api-kivy.app.html#kivy.app.App.on_pause
I don't know. Probably something worth looking into at the Qt level.
> That's important to prevent the long startup time.
>
> Thomas Pfeiffer:
>> Hi,
>>
>> glad that you find Kirigami interesting!
>>
>> Admittedly, we're not very used to our frameworks being used by people
>> with no prior KDE experience, so yes, we should provide more
>> instructions there.
>>
>> ECM stands for Extra CMake Modules. Our wiki [1] explains where to get
>> them (if you are using Linux, your distro should provide a package of
>> them).
>>
>> Hope that helps. Feel free to ask here or on IRC or Telegram if you have
>> further questions.
>>
>> Cheers,
>>
>> Thomas
>>
>> [1]
>> https://community.kde.org/Guidelines_and_HOWTOs/Build_from_source/Details#Extra_CMake_Modules
>>
>>
>>
>> On 12.08.2016 18:06, Police Terror wrote:
>>> Hello,
>>>
>>> I'm excited by the slick looking Kirigami and the possibility of
>>> building applications to deploy on Linux, Android, and Windows with C++.
>>>
>>> Unfortunately the documentation is very sparse!
>>>
>>> The GitHub says:
>>>
>>> cmake ..
>>> -DCMAKE_TOOLCHAIN_FILE=/path/to/share/ECM/toolchain/Android.cmake -DQT
>>> ANDROID_EXPORTED_TARGET=kirigamigallery
>>> -DANDROID_APK_DIR=../examples/android/ -
>>> DCMAKE_PREFIX_PATH=/path/to/Qt-Android/5.5/android_armv7/
>>> -DCMAKE_INSTALL_PREFIX=/path/to/dummy/install/prefix -DBUILD_EXAMPLES=ON
>>>
>>> What is ECM?? I've been searching the net for clues but found nothing.
>>>
>>> Thanks (I'm new to Android platform development)
>>
More information about the Plasma-devel
mailing list