Compilation fails on cross x86_64 -> aarch64
Cross compiling for aarch64 from a x86_64 build machine results in the following error:
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: warning: libedbus-private.so, needed by ./libedataserver-1.2.so, not found (try using -rpath or -rpath-link)
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_get_source_remote_creatable'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_get_type'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_peek_source_removable'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_call_invoke_credentials_required_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_peek_source_writable'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_peek_source_remote_deletable'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_get_source_remote_deletable'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_set_connection_status'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_manager_client_new_for_bus_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_get_type'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_peek_source_remote_creatable'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_call_invoke_authenticate_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_oauth2_support_call_get_access_token_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_removable_call_remove_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_get_source_removable'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_remote_creatable_call_create_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_remote_deletable_call_delete_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_dup_uid'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_manager_call_refresh_backend_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_peek_source'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_call_unset_last_credentials_required_arguments_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_manager_proxy_new_for_bus_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_dup_data'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_get_source_writable'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_dup_connection_status'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_manager_call_create_sources_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_get_source'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_object_get_source_oauth2_support'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_call_get_last_credentials_required_arguments_sync'
/usr/lib/gcc/aarch64-linux-gnu/8.2.0/../../../../aarch64-linux-gnu/bin/ld: ./libedataserver-1.2.so: undefined reference to `e_dbus_source_writable_call_write_sync'
collect2: error: ld returned 1 exit status
linking of temporary binary failed: Command '['/builddir/.xbps-evolution-data-server/wrappers/aarch64-linux-gnu-gcc', '-o', '/builddir/evolution-data-server-3.30.5/build/src/libedataserver/tmp-introspectnhitxuvs/EDataServer-1.2', '-fstack-clash-protection', '-D_FORTIFY_SOURCE=2', '-O2', '-pipe', '-march=armv8-a', '-I/usr/aarch64-linux-gnu/usr/include', '/builddir/evolution-data-server-3.30.5/build/src/libedataserver/tmp-introspectnhitxuvs/EDataServer-1.2.o', '-L.', '-Wl,-rpath,.', '-Wl,--no-as-needed', '-L/builddir/evolution-data-server-3.30.5/build', '-Wl,-rpath,/builddir/evolution-data-server-3.30.5/build', '-L/builddir/evolution-data-server-3.30.5/build/src', '-Wl,-rpath,/builddir/evolution-data-server-3.30.5/build/src', '-L/builddir/evolution-data-server-3.30.5/build/src/libedataserver', '-Wl,-rpath,/builddir/evolution-data-server-3.30.5/build/src/libedataserver', '-L/builddir/evolution-data-server-3.30.5/build/src/private', '-Wl,-rpath,/builddir/evolution-data-server-3.30.5/build/src/private', '-L/builddir/evolution-data-server-3.30.5/build/src/camel', '-Wl,-rpath,/builddir/evolution-data-server-3.30.5/build/src/camel', '-L/usr/lib', '-Wl,-rpath,/usr/lib', '-L/usr/aarch64-linux-gnu/usr/lib', '-Wl,-rpath,/usr/aarch64-linux-gnu/usr/lib', '-lcamel-1.2', '-ledataserver-1.2', '-L/usr/aarch64-linux-gnu/usr/lib', '-lgio-2.0', '-lgobject-2.0', '-Wl,--export-dynamic', '-lgmodule-2.0', '-pthread', '-lglib-2.0']' returned non-zero exit status 1.
make[2]: *** [src/libedataserver/CMakeFiles/gir-girs-EDataServer_1_2_gir.dir/build.make:229: src/libedataserver/EDataServer-1.2.gir] Error 1
make[1]: *** [CMakeFiles/Makefile2:5370: src/libedataserver/CMakeFiles/gir-girs-EDataServer_1_2_gir.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
=> ERROR: evolution-data-server-3.30.5_1: do_build: '${make_cmd} ${makejobs} ${make_build_args} ${make_build_target}' exited with 2
=> ERROR: in do_build() at common/build-style/cmake.sh:71
Seems like it fails to find libedbus-private.so
Edited by Milan Crha