[Pkg-lxde-maintainers] Bug#982395: pcmanfm: FTBFS cannot compile package from source

Jens Seidel jensseidel at users.sf.net
Tue Feb 9 17:24:16 GMT 2021


Package: pcmanfm
Version: 1.3.1
Severity: normal

Hi,

I noticed that the icons in the toolbar (with tooltips "View as thumbnails", "View as icons", "View as small icons") are not visible whereas "Create new folder" is. Trying to analyse the missing package dependency I tried to build the package from source but failed in a stable buster system (build dependency are installed):

pcmanfm-1.3.1 $ dpkg-buildpackage
...
gcc -DHAVE_CONFIG_H -I. -I..  -DPACKAGE_DATA_DIR=\""/usr/share/pcmanfm"\" -DPACKAGE_UI_DIR=\""/usr/share/pcmanfm/ui"\" -DPACKAGE_MODULES_DIR=\""/usr/lib/aarch64-linux-gnu/pcmanfm"\" -DPACKAGE_LOCALE_DIR=\""/usr/share/locale"\" -Wdate-time -D_FORTIFY_SOURCE=2 -D_LARGEFILE_SOURCE -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/aarch64-linux-gnu/gtk-2.0/include -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gio-unix-2.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -DG_DISABLE_CAST_CHECKS -Wall -Werror-implicit-function-declaration  -g -O2 -fdebug-prefix-map=/home/jens/tmp/pcmanfm/pcmanfm-1.3.1=. -fstack-protector-strong -Wformat -Werror=format-security -c -o pcmanfm-desktop.o `test -f 'desktop.c' || echo './'`desktop.c
desktop.c: In function ‘fm_desktop_item_accessible_idle_do_action’:
desktop.c:939:21: note: #pragma message: ((((FmFolderView*) ((XXXX)))))
             #pragma message STR(FM_FOLDER_VIEW(XXXX))
                     ^~~~~~~
desktop.c:940:13: error: too few arguments to function ‘fm_folder_view_item_clicked’
             fm_folder_view_item_clicked(FM_FOLDER_VIEW(item->widget), tp,
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/libfm/fm-gtk.h:40,
                 from desktop.h:28,
                 from desktop.c:27:
/usr/include/libfm/fm-folder-view.h:209:17: note: declared here
 void            fm_folder_view_item_clicked(FmFolderView* fv, GtkTreePath* path,
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~

(The pragma was added by me to see whether the macro FM_FOLDER_VIEW is wrongly defined.)

/usr/include/libfm/fm-folder-view.h comes from package

ii  libfm-dev:arm64 1.3.1-1+rpt18 arm64        file management support (core development files)

and I found no further fm_folder_view_item_clicked() declaration in /usr/include.

The source and the system header clearly do not match:

/pcmanfm-1.3.1 $ grep -r -C1 fm_folder_view_item_clicked . /usr/include/
./src/desktop.c-            #pragma message STR(FM_FOLDER_VIEW(XXXX))
./src/desktop.c:            fm_folder_view_item_clicked(FM_FOLDER_VIEW(item->widget), tp,
./src/desktop.c-                                        item->action_type == 0 ? FM_FV_ACTIVATED : FM_FV_CONTEXT_MENU);
--
./src/desktop.c-    if (widget)
./src/desktop.c:        fm_folder_view_item_clicked(FM_FOLDER_VIEW(widget), NULL, FM_FV_CONTEXT_MENU);
./src/desktop.c-    return FALSE;
--
./src/desktop.c-            tp = gtk_tree_model_get_path(GTK_TREE_MODEL(self->model), &it);
./src/desktop.c:        fm_folder_view_item_clicked(FM_FOLDER_VIEW(self), tp, clicked);
./src/desktop.c-        if(tp)
--
./src/desktop.c-                tp = gtk_tree_model_get_path(model, &it);
./src/desktop.c:                fm_folder_view_item_clicked(FM_FOLDER_VIEW(desktop), tp, FM_FV_ACTIVATED);
./src/desktop.c-                if(tp)
--
./src/desktop.c-                tp = gtk_tree_model_get_path(model, &it);
./src/desktop.c:                fm_folder_view_item_clicked(FM_FOLDER_VIEW(desktop), tp, FM_FV_ACTIVATED);
./src/desktop.c-                if(tp)
--
/usr/include/libfm-1.0/fm-folder-view.h-/* emit signals; for interface implementations only */
/usr/include/libfm-1.0/fm-folder-view.h:void            fm_folder_view_item_clicked(FmFolderView* fv, GtkTreePath* path,
/usr/include/libfm-1.0/fm-folder-view.h-                                            FmFolderViewClickType type, gint icon_or_label);


As far as I know libfm-dev was not changed in many, many years, or am I wrong and a versioned build-depends is missing?

Jens


More information about the Pkg-lxde-maintainers mailing list