Raspberry PI support...

Tonio Kroeger tonio.kroeger1903 at gmail.com
Mon Sep 7 08:22:04 BST 2020


Hi Gilles,

that is great news! Can you give a hint/link to what are the prerequisites
on the raspi? I really struggled with it. Installed a lot of stuff I had no
idea what it was. In the end my (headless) raspi did not boot anymore...

Would be absolutely great to have digikam on the raspi!

Thanks

TK

On Sun, Jun 7, 2020 at 11:27 AM Gilles Caulier <caulier.gilles at gmail.com>
wrote:

> Hi all,
>
> I bought the last PI version 4 B, with 4 core ARM 64 bits and 8Gb of RAM.
>
> compared to older PI 3 mono core 1 Gb, this version rock really and
> fully suitable with Plasma desktop.
>
> Compared to version 3, version 4 compiles the whole digiKam from
> scratch in less than one hour. Under version 3, it's more than 10
> hours....
>
> Expected for the Opengl API, all compile fine. I will investigate why
> libgl API do not export right functions, even if all include files are
> installed...
>
> I also made a small patch to compile Exiv2 under ARM. I PR my patch
> but, as usual, it's always complicated with Robin to propose changes
> in the Exiv2 project even if the patch is very small.. I think the
> problem is a human one...
>
> https://github.com/Exiv2/exiv2/pull/1231
>
> digiKam under ARM report alignment of data warnings, especially with
> DImg API, like this :
>
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp: In member
> function ‘Digikam::DImg Digikam::DImg::smoothScaleClipped(int, int,
> int, int, int, int) const’:
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:231:81:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘ullong*’ {aka
> ‘long long unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>              dimgScaleAARGBA16(scaleinfo,
> reinterpret_cast<ullong*>(buffer.bits()),
>
>           ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:237:80:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘ullong*’ {aka
> ‘long long unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>              dimgScaleAARGB16(scaleinfo,
> reinterpret_cast<ullong*>(buffer.bits()),
>
>          ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:246:77:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘uint*’ {aka
> ‘unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>              dimgScaleAARGBA(scaleinfo,
> reinterpret_cast<uint*>(buffer.bits()),
>
>    ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:252:76:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘uint*’ {aka
> ‘unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>              dimgScaleAARGB(scaleinfo,
> reinterpret_cast<uint*>(buffer.bits()),
>
>   ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp: In member
> function ‘Digikam::DImg Digikam::DImg::smoothScaleSection(int, int,
> int, int, int, int) const’:
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:338:81:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘ullong*’ {aka
> ‘long long unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>              dimgScaleAARGBA16(scaleinfo,
> reinterpret_cast<ullong*>(buffer.bits()),
>
>           ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:346:80:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘ullong*’ {aka
> ‘long long unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>              dimgScaleAARGB16(scaleinfo,
> reinterpret_cast<ullong*>(buffer.bits()),
>
>          ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:358:66:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘uint*’ {aka
> ‘unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>                              reinterpret_cast<uint*>(buffer.bits()),
>                                                                   ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:367:65:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘uint*’ {aka
> ‘unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>                             reinterpret_cast<uint*>(buffer.bits()),
>                                                                  ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp: In function
> ‘Digikam::DImgScale::DImgScaleInfo*
> Digikam::DImgScale::dimgCalcScaleInfo(const Digikam::DImg&, int, int,
> int, int, bool)’:
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:521:80:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘ullong*’ {aka
> ‘long long unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>          isi->ypoints16 =
> dimgCalcYPoints16(reinterpret_cast<ullong*>(img.bits()), img.width(),
> img.height(), sch);
>
>          ^
> /home/gilles/Documents/7.x/core/libs/dimg/dimg_scale.cpp:526:76:
> warning: cast from ‘uchar*’ {aka ‘unsigned char*’} to ‘uint*’ {aka
> ‘unsigned int*’} increases required alignment of target type
> [-Wcast-align]
>          isi->ypoints   =
> dimgCalcYPoints(reinterpret_cast<uint*>(img.bits()), img.width(),
> img.height(), sch);
>
> Voilà, work in progress
>
> Gilles caulier
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-devel/attachments/20200907/0cefc24a/attachment.htm>


More information about the Digikam-devel mailing list