[Debian-med-packaging] Bug#977953: sigviewer FTBFS: .../libxdf.so: undefined reference to `pugi::...'

Helmut Grohne helmut at subdivi.de
Wed Dec 23 09:51:30 GMT 2020


Source: sigviewer
Version: 0.6.4-1
Severity: serious
Tags: ftbfs

sigviewer fails to build from source in unstable. A build ends with:

| g++ -Wl,-z,relro -Wl,-z,now -o bin/release/sigviewer tmp/release/data_block.o tmp/release/exception.o tmp/release/fixed_data_block.o tmp/release/math_utils.o tmp/release/signal_channel.o tmp/release/signal_event.o tmp/release/FFTReal.o tmp/release/biosig_basic_header.o tmp/release/biosig_reader.o tmp/release/biosig_writer.o tmp/release/channel_manager_impl.o tmp/release/event_manager_impl.o tmp/release/event_table_file_reader.o tmp/release/evt_writer.o tmp/release/xdf_reader.o tmp/release/basic_header.o tmp/release/channel_manager.o tmp/release/file_signal_reader_factory.o tmp/release/file_signal_writer_factory.o tmp/release/file_signal_reader.o tmp/release/background_processes.o tmp/release/color_manager.o tmp/release/gui_action_command.o tmp/release/gui_action_factory.o tmp/release/signal_view_settings.o tmp/release/signal_visualisation_model.o tmp/release/gui_helper_functions.o tmp/release/main_window.o tmp/release/main_window_model_impl.o tmp/release/processed_signal_channel_manager.o tmp/release/select_shown_channels_dialog.o tmp/release/signal_browser_mouse_handling.o tmp/release/adapt_channel_view_gui_command.o tmp/release/adapt_event_view_gui_command.o tmp/release/close_file_gui_command.o tmp/release/event_editing_gui_command.o tmp/release/help_gui_command.o tmp/release/mouse_mode_gui_command.o tmp/release/open_file_gui_command.o tmp/release/save_gui_command.o tmp/release/signal_processing_gui_command.o tmp/release/undo_redo_gui_command.o tmp/release/zoom_gui_command.o tmp/release/basic_header_info_dialog.o tmp/release/channel_selection_dialog.o tmp/release/event_time_selection_dialog.o tmp/release/event_types_selection_dialog.o tmp/release/scale_channel_dialog.o tmp/release/resampling_dialog.o tmp/release/event_table_view_model.o tmp/release/event_table_widget.o tmp/release/adapt_browser_view_widget.o tmp/release/event_context_menu.o tmp/release/event_creation_widget.o tmp/release/event_editing_widget.o tmp/release/event_graphics_item.o tmp/release/label_widget.o tmp/release/signal_browser_model_4.o tmp/release/signal_browser_view.o tmp/release/signal_graphics_item.o tmp/release/signal_grid_graphics_item.o tmp/release/x_axis_widget_4.o tmp/release/y_axis_widget_4.o tmp/release/change_channel_undo_command.o tmp/release/change_type_undo_command.o tmp/release/delete_event_undo_command.o tmp/release/macro_undo_command.o tmp/release/new_event_undo_command.o tmp/release/resize_event_undo_command.o tmp/release/convert_file_command.o tmp/release/open_file_command.o tmp/release/color_manager_tests.o tmp/release/data_block_tests.o tmp/release/editing_commands_tests.o tmp/release/event_manager_tests.o tmp/release/event_table_widget_tests.o tmp/release/file_handling_tests.o tmp/release/gui_tests.o tmp/release/test.o tmp/release/tests_dialog.o tmp/release/main.o tmp/release/application_context_impl.o tmp/release/file_context.o tmp/release/tab_context.o tmp/release/qrc_src.o tmp/release/moc_event_manager.o tmp/release/moc_background_processes.o tmp/release/moc_gui_action_command.o tmp/release/moc_signal_view_settings.o tmp/release/moc_signal_visualisation_model.o tmp/release/moc_main_window.o tmp/release/moc_main_window_model_impl.o tmp/release/moc_select_shown_channels_dialog.o tmp/release/moc_adapt_channel_view_gui_command.o tmp/release/moc_adapt_event_view_gui_command.o tmp/release/moc_close_file_gui_command.o tmp/release/moc_event_editing_gui_command.o tmp/release/moc_help_gui_command.o tmp/release/moc_mouse_mode_gui_command.o tmp/release/moc_open_file_gui_command.o tmp/release/moc_save_gui_command.o tmp/release/moc_signal_processing_gui_command.o tmp/release/moc_undo_redo_gui_command.o tmp/release/moc_zoom_gui_command.o tmp/release/moc_basic_header_info_dialog.o tmp/release/moc_channel_selection_dialog.o tmp/release/moc_event_time_selection_dialog.o tmp/release/moc_event_types_selection_dialog.o tmp/release/moc_scale_channel_dialog.o tmp/release/moc_resampling_dialog.o tmp/release/moc_event_table_widget.o tmp/release/moc_adapt_browser_view_widget.o tmp/release/moc_event_context_menu.o tmp/release/moc_event_creation_widget.o tmp/release/moc_event_editing_widget.o tmp/release/moc_event_graphics_item.o tmp/release/moc_label_widget.o tmp/release/moc_signal_browser_graphics_view.o tmp/release/moc_signal_browser_model_4.o tmp/release/moc_signal_browser_view.o tmp/release/moc_signal_graphics_item.o tmp/release/moc_x_axis_widget_4.o tmp/release/moc_y_axis_widget_4.o tmp/release/moc_test.o tmp/release/moc_tests_dialog.o tmp/release/moc_application_context_impl.o tmp/release/moc_file_context.o tmp/release/moc_tab_context.o   -L/<<PKGBUILDDIR>>/external/lib -lbiosig -lxdf -lpthread /usr/lib/x86_64-linux-gnu/libQt5Widgets.so /usr/lib/x86_64-linux-gnu/libQt5Gui.so /usr/lib/x86_64-linux-gnu/libQt5Xml.so /usr/lib/x86_64-linux-gnu/libQt5Core.so -lGL
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_document::load_buffer_inplace(void*, unsigned long, unsigned int, pugi::xml_encoding)'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_document::load_string(char const*, unsigned int)'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::name() const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node_iterator::operator*() const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::append_child(pugi::xml_node_type)'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_text::get() const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_document::xml_document()'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::text() const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::set_value(char const*)'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node_iterator::operator!=(pugi::xml_node_iterator const&) const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::insert_child_after(char const*, pugi::xml_node const&)'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::child(char const*) const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_text::as_float(float) const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node_iterator::operator++()'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::operator void (*)(pugi::xml_node***)() const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_text::as_int(int) const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_text::as_double(double) const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::next_sibling(char const*) const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::child_value() const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_document::save(std::ostream&, char const*, unsigned int, pugi::xml_encoding) const'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_document::~xml_document()'
| /usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/10/../../../x86_64-linux-gnu/libxdf.so: undefined reference to `pugi::xml_node::children() const'
| collect2: error: ld returned 1 exit status
| make[1]: *** [Makefile:596: bin/release/sigviewer] Error 1
| make[1]: Leaving directory '/<<PKGBUILDDIR>>'
| dh_auto_build: error: make -j8 returned exit code 2
| make: *** [debian/rules:9: binary] Error 25
| dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2

This is also seen during cross builds:
http://crossqa.debian.net/build/sigviewer_0.6.4-1_ppc64el_20201223011954.log

Possibly, this is not a fault of sigviewer though. Possibly libxdf-dev
is missing a dependency on libpugixml-dev. If that is the case, don't
hesitate to reassign.

Helmut



More information about the Debian-med-packaging mailing list