On Sat, 2025-09-27 at 19:31 +0200, Andreas Schneider wrote:
> After upgrading to Debian Trixie, Denemo fails to compile with the 
> following error:
> 
> source/proof.c: In function ‘press’:
> source/proof.c:283:76: error: passing argument 1 of 
> ‘ev_document_annotations_get_annotations’ from incompatible pointer
> type 
> [-Wincompatible-pointer-types]
>    283 | st *mapping_list = ev_document_annotations_get_annotations 
> (doc, ev_document_get_page(doc, i));
>        |                                                            
> ^~~
>        |                                                            
> |
>        | 
> EvDocument * {aka struct _EvDocument *}
> 
> In file included from /usr/include/evince/3.0/evince-document.h:27,
>                   from 
> /usr/include/evince/3.0/libview/ev-job-scheduler.h:29,
>                   from /usr/include/evince/3.0/evince-view.h:23,
>                   from source/proof.c:28:
> /usr/include/evince/3.0/libdocument/ev-document-annotations.h:104:85:
> note: expected ‘EvDocumentAnnotations *’ {aka ‘struct 
> _EvDocumentAnnotations *’} but argument is of type ‘EvDocument *’
> {aka 
> ‘struct _EvDocument *’}
>    104 | nt_annotations_get_annotations      (EvDocumentAnnotations 
> *document_annots,
>        | 
> ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> 
> source/proof.c: In function ‘find_annotated_pages’:
> source/proof.c:316:84: error: passing argument 1 of 
> ‘ev_document_annotations_get_annotations’ from incompatible pointer
> type 
> [-Wincompatible-pointer-types]
>    316 | st *mapping_list = ev_document_annotations_get_annotations 
> (doc, ev_document_get_page(doc, i));
>        |                                                            
> ^~~
>        |                                                            
> |
>        | 
> EvDocument * {aka struct _EvDocument *}
> 
> /usr/include/evince/3.0/libdocument/ev-document-annotations.h:104:85:
> note: expected ‘EvDocumentAnnotations *’ {aka ‘struct 
> _EvDocumentAnnotations *’} but argument is of type ‘EvDocument *’
> {aka 
> ‘struct _EvDocument *’}
>    104 | nt_annotations_get_annotations      (EvDocumentAnnotations 
> *document_annots,
>        | 
> ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> 
> This seems to be caused by an API change in libevince.
> This also occurs with the nightly build.

For quite a while now libevince has been failing to support the point
and click which lets you re-shape slurs/play from a note in the typeset
and more. I recall being unable to track down why that was nor find any
human documentation for libevince that might indicate what had changed.
For that reason libatril was substituted and that has been working ever
since. Looking in the configure.ac it seems that

--enable-evince=no

is needed to configure Denemo to use libatril.

I did an update of my Debian the other day, but it seems that this
hasn't moved me on from bookworm ... perhaps something else is needed
to move from bookworm to trixie? So I don't know for sure that libatril
is still working.

Richard

> 
> Andreas
> 

Reply via email to