Skip to content

Documentation building error: "OSError: libharfbuzz-gobject.so.0: cannot open shared object file: No such file or directory" #218

@capiman

Description

@capiman

'''
trio@radio2:~/pgi-docgen/docker $ bash -x ./build-docs.sh

  • set -e
  • TAG=ghcr.io/pygobject/pgi-docgen:v4
    ++ pwd
  • sudo docker run --security-opt label=disable --rm --volume /home/trio/pgi-docgen/docker/..:/home/user/app -t ghcr.io/pygobject/pgi-docgen:v4 pgi-docgen update-debian-info
    ++ pwd
  • sudo docker run --security-opt label=disable --rm --volume /home/trio/pgi-docgen/docker/..:/home/user/app -t ghcr.io/pygobject/pgi-docgen:v4 pgi-docgen create-debian --cachedir /home/user/_debian_build_cache _docs
    [don't forget to apt-file update/apt-get update!]
    searching for typelibs..
    searching for uninstalled typelibs
    Unknown in deb skiplist: ['gir1.2-gconf-2.0', 'gir1.2-hkl-5.0']
    Unknown in typelib skiplist: ['AgsAudio-5.0', 'AgsAudio-6.0', 'AtrilDocument-1.5.0', 'AtrilView-1.5.0', 'AyatanaAppIndicator-0.1', 'BraseroBurn-3.1', 'BraseroMedia-3.1', 'BurnerBurn-3.1', 'BurnerMedia-3.1', 'Caja-2.0', 'Click-0.4', 'DbusmenuGtk-0.4', 'Diodon-1.0', 'Eom-1.0', 'Folks-0.7', 'FolksDummy-0.7', 'FolksEds-0.7', 'FolksTelepathy-0.7', 'GCalc-2', 'GConf-2.0', 'GTop-2.0', 'GUPnPIgd-1.0', 'Ganv-1.0', 'Gcr-3', 'GcrUi-3', 'Gdk-2.0', 'GdkX11-2.0', 'Gee-0.8', 'Granite-1.0', 'Granite-7.0', 'Gtk-2.0', 'Hkl-5.0', 'Kkc-1.0', 'MateDesktop-2.0', 'MatePanelApplet-4.0', 'Matekbd-1.0', 'Nice-0.1', 'PQMarble-2', 'Pluma-1.0', 'Skk-1.0', 'SugarExt-1.0', 'Wnck-1.0']
    Missing gir files: []
    Missing typelib files: ['Abi-3.0', 'Accounts-1.0', 'AccountsService-1.0', 'Adw-1', 'Ags-6.0', 'AgsAudio-6.0', 'AgsGui-6.0', 'Amtk-5', 'Aperture-0', 'AppStream-1.0', 'AppStreamCompose-1.0', 'AppStreamGlib-1.0', 'Aravis-0.8', 'Atk-1.0', 'AtrilDocument-1.5.0', 'AtrilView-1.5.0', 'Atspi-2.0', 'Avahi-0.6', 'AvahiCore-0.6', 'AyatanaAppIndicator3-0.1', 'AyatanaCommon-0.0', 'AyatanaIdo3-0.4', 'Babl-0.1', 'Bamf-3', 'BlockDev-3.0', 'BraseroBurn-3.1', 'BraseroMedia-3.1', 'Budgie-1.0', 'BudgieRaven-1.0', 'BurnerBurn-3.1', 'BurnerMedia-3.1', 'CDesktopEnums-3.0', 'CMenu-3.0', 'CScreensaver-1.0', 'Caja-2.0', 'Cally-1.0', 'Camel-1.2', 'Cattle-1.0', 'Champlain-0.12', 'Cheese-3.0', 'CinnamonDesktop-3.0', 'Click-0.4', 'CloudProviders-0.3', 'Clutter-1.0', 'ClutterGdk-1.0', 'ClutterGst-3.0', 'ClutterX11-1.0', 'Cogl-1.0', 'Cogl-2.0', 'CoglPango-1.0', 'CoglPango-2.0', 'Colord-1.0', 'ColordGtk-1.0', 'Colorhug-1.0', 'CryptUI-0.0', 'CudaGst-1.0', 'Cvc-1.0', 'DBus-1.0', 'DBusGLib-1.0', 'Dazzle-1.0', 'Dbusmenu-0.4', 'DbusmenuGtk3-0.4', 'Dee-1.0', 'Devhelp-3.0', 'Dex-1', 'Diodon-1.0', 'Dmap-4.0', 'EBackend-1.2', 'EBook-1.2', 'EBookContacts-1.2', 'ECal-2.0', 'EDataBook-1.2', 'EDataCal-2.0', 'EDataServer-1.2', 'EDataServerUI-1.2', 'EDataServerUI4-1.0', 'Endless-0', 'Eom-1.0', 'Evd-0.2', 'EvinceDocument-3.0', 'EvinceView-3.0', 'FPrint-2.0', 'Farstream-0.2', 'Fcitx-1.0', 'FcitxG-1.0', 'Flatpak-1.0', 'Folks-0.7', 'FolksDummy-0.7', 'FolksEds-0.7', 'FolksTelepathy-0.7', 'Fwupd-2.0', 'GCab-1.0', 'GData-0.0', 'GDesktopEnums-3.0', 'GES-1.0', 'GExiv2-0.10', 'GIRepository-2.0', 'GL-1.0', 'GLib-2.0', 'GMenu-3.0', 'GMime-3.0', 'GModule-2.0', 'GObject-2.0', 'GOffice-0.10', 'GPaste-2', 'GPasteGtk-3', 'GPasteGtk-4', 'GSSDP-1.6', 'GSound-1.0', 'GTherm-0.0', 'GTop-2.0', 'GUPnP-1.6', 'GUPnPAV-1.0', 'GUPnPDLNA-2.0', 'GUPnPDLNAGst-2.0', 'GUPnPIgd-1.6', 'GUdev-1.0', 'GUsb-1.0', 'GVnc-1.0', 'GVncPulse-1.0', 'GWeather-4.0', 'GXPS-0.1', 'Garcon-1.0', 'GarconGtk-1.0', 'Gck-1', 'Gck-2', 'Gcr-3', 'Gcr-4', 'GcrUi-3', 'Gda-5.0', 'Gdk-2.0', 'Gdk-3.0', 'Gdk-4.0', 'GdkPixbuf-2.0', 'GdkPixdata-2.0', 'GdkWayland-4.0', 'GdkX11-2.0', 'GdkX11-3.0', 'GdkX11-4.0', 'Gdl-3', 'Gdm-1.0', 'Gee-0.8', 'Gegl-0.4', 'Geoclue-2.0', 'GeocodeGlib-2.0', 'Gepub-0.7', 'Ggit-1.0', 'Gio-2.0', 'Gkbd-3.0', 'Gladeui-2.0', 'Gnm-1.12', 'GnomeAutoar-0.1', 'GnomeAutoarGtk-0.1', 'GnomeBG-4.0', 'GnomeBluetooth-3.0', 'GnomeDesktop-3.0', 'GnomeDesktop-4.0', 'GnomeRR-4.0', 'GoVirt-1.0', 'Goa-1.0', 'Gom-1.0', 'GooCanvas-2.0', 'Granite-1.0', 'Granite-7.0', 'Graphene-1.0', 'Grl-0.3', 'GrlNet-0.3', 'GrlPls-0.3', 'Grss-0.7', 'Gsf-1', 'Gsk-4.0', 'Gspell-1', 'Gst-1.0', 'GstAllocators-1.0', 'GstApp-1.0', 'GstAudio-1.0', 'GstBadAudio-1.0', 'GstBase-1.0', 'GstCheck-1.0', 'GstClapper-1.0', 'GstCodecs-1.0', 'GstController-1.0', 'GstCuda-1.0', 'GstGL-1.0', 'GstGLEGL-1.0', 'GstGLWayland-1.0', 'GstGLX11-1.0', 'GstInsertBin-1.0', 'GstMpegts-1.0', 'GstNet-1.0', 'GstPbutils-1.0', 'GstPlay-1.0', 'GstPlayer-1.0', 'GstRtp-1.0', 'GstRtsp-1.0', 'GstRtspServer-1.0', 'GstSdp-1.0', 'GstTag-1.0', 'GstTranscoder-1.0', 'GstVa-1.0', 'GstVideo-1.0', 'GstVulkan-1.0', 'GstVulkanWayland-1.0', 'GstVulkanXCB-1.0', 'GstWebRTC-1.0', 'Gtk-2.0', 'Gtk-3.0', 'Gtk-4.0', 'GtkChamplain-0.12', 'GtkClutter-1.0', 'GtkLayerShell-0.1', 'GtkSource-3.0', 'GtkSource-4', 'GtkSource-5', 'GtkSpell-3.0', 'GtkVnc-2.0', 'Gucharmap-2.90', 'Handy-1', 'HarfBuzz-0.0', 'Hinawa-3.0', 'Hkl-5.0', 'IBus-1.0', 'ICal-3.0', 'ICalGLib-3.0', 'InfGnutls-3.0', 'InfGsasl-1.0', 'InfGtk-0.7', 'InfText-0.7', 'InfTextGtk-0.7', 'Infinity-0.7', 'Infinityc-0.7', 'Infinityd-0.7', 'Infinoted-0.7', 'InputPad-1.1', 'Itl-1.0', 'JavaScriptCore-4.0', 'JavaScriptCore-4.1', 'JavaScriptCore-6.0', 'Jcat-1.0', 'Json-1.0', 'Jsonrpc-1.0', 'Keybinder-0.0', 'Kkc-1.0', 'LOKDocView-0.1', 'LangTag-0.6', 'Lfb-0.0', 'Libinsane-1.0', 'Libmsi-1.0', 'Libosinfo-1.0', 'LibvirtGConfig-1.0', 'LibvirtGLib-1.0', 'LibvirtGObject-1.0', 'Libxfce4panel-2.0', 'Libxfce4ui-2.0', 'Libxfce4util-1.0', 'LomiriAppLaunch-0', 'LunarDate-3.0', 'MPID-3.0', 'Malcontent-0', 'MalcontentUi-1', 'Manette-0.2', 'MateDesktop-2.0', 'MateMenu-2.0', 'MatePanelApplet-4.0', 'Matekbd-1.0', 'Mbim-1.0', 'MediaArt-2.0', 'MessagingMenu-1.0', 'ModemManager-1.0', 'Modulemd-2.0', 'MyPaint-1.6', 'NM-1.0', 'NMA-1.0', 'NMA4-1.0', 'Nautilus-4.0', 'Nemo-3.0', 'Nice-0.1', 'Notify-0.7', 'OSTree-1.0', 'OsmGpsMap-1.0', 'PQMarble-2', 'Panel-1', 'Pango-1.0', 'PangoCairo-1.0', 'PangoFT2-1.0', 'PangoFc-1.0', 'PangoOT-1.0', 'PangoXft-1.0', 'Parlatype-4.0', 'Peas-1.0', 'Peas-2', 'PeasGtk-1.0', 'Playerctl-2.0', 'Pluma-1.0', 'Polkit-1.0', 'PolkitAgent-1.0', 'Poppler-0.18', 'Qmi-1.0', 'Qrtr-1.0', 'RB-3.0', 'Rest-1.0', 'RestExtras-1.0', 'Retro-1', 'Rsvg-2.0', 'Secret-1', 'Shumate-1.0', 'Signon-2.0', 'Skk-1.0', 'Snapd-2', 'Soup-2.4', 'Soup-3.0', 'SoupGNOME-2.4', 'SpiceClientGLib-2.0', 'SpiceClientGtk-3.0', 'SugarExt-1.0', 'SugarGestures-1.0', 'TelepathyGLib-0.12', 'TelepathyLogger-0.2', 'Template-1.0', 'Tepl-6', 'Thunarx-3.0', 'TimezoneMap-1.0', 'Totem-1.0', 'TotemPlParser-1.0', 'Tracker-3.0', 'UDisks-2.0', 'UMockdev-1.0', 'UPowerGlib-1.0', 'Ufo-1.0', 'Uhm-0.0', 'UkuiMenu-2.0', 'Urfkill-0.5', 'Vte-2.91', 'Vte-3.91', 'Vulkan-1.0', 'WebKit-6.0', 'WebKit2-4.0', 'WebKit2-4.1', 'WebKit2WebExtension-4.0', 'WebKit2WebExtension-4.1', 'WebKitWebProcessExtension-6.0', 'Wnck-1.0', 'Wnck-3.0', 'Workrave-1.0', 'Workrave-2.0', 'Wp-0.4', 'XApp-1.0', 'Xdp-1.0', 'XdpGtk3-1.0', 'XdpGtk4-1.0', 'Xfconf-0', 'Xkl-1.0', 'Xmlb-2.0', 'ZBar-1.0', 'Zeitgeist-2.0', 'cairo-1.0', 'fontconfig-2.0', 'freetype2-2.0', 'gir-1.2', 'libxml2-2.0', 'rda-1.0', 'xfixes-4.0', 'xft-2.0', 'xlib-2.0', 'xrandr-1.3']
    11 ready to build
    searching for required shared libraries..
    searching for debug packages..
    7 ready to build after filtering
    starting the build..
    Traceback (most recent call last):
    File "/home/user/.local/pipx/venvs/pgi-docgen/lib/python3.11/site-packages/pgi/module.py", line 121, in get_introspection_module
    util.load_ctypes_library(library)
    File "/home/user/.local/pipx/venvs/pgi-docgen/lib/python3.11/site-packages/pgi/util.py", line 60, in load_ctypes_library
    return cdll.LoadLibrary(name)
    ^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.11/ctypes/init.py", line 454, in LoadLibrary
    return self._dlltype(name)
    ^^^^^^^^^^^^^^^^^^^
    File "/usr/lib/python3.11/ctypes/init.py", line 376, in init
    self._handle = _dlopen(self._name, mode)
    ^^^^^^^^^^^^^^^^^^^^^^^^^
    OSError: libharfbuzz-gobject.so.0: cannot open shared object file: No such file or directory

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/home/user/.local/bin/pgi-docgen", line 8, in
sys.exit(run())
^^^^^
File "/home/user/app/pgidocgen/main.py", line 34, in run
return main(sys.argv)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/main.py", line 30, in main
return args.func(args)
^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/create.py", line 53, in main
gen.write(args.target)
File "/home/user/app/pgidocgen/gen/module.py", line 129, in write
mods = get_to_write(dir_, self._namespace, self._version)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/gen/module.py", line 122, in get_to_write
ns = get_namespace(namespace, version)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 50, in get_namespace
getattr(ns, k)
File "/home/user/app/pgidocgen/util.py", line 605, in get
obj.dict[self.name] = result = self.fget(obj)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 171, in shadow_map
self._ensure_types()
File "/home/user/app/pgidocgen/namespace.py", line 160, in _ensure_types
_parse_types(dom, self.import_module(), self.namespace)
^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 186, in import_module
to_load = list(reversed(self.all_dependencies))
^^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/util.py", line 605, in get
obj.dict[self.name] = result = self.fget(obj)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 274, in all_dependencies
sub_ns = get_namespace(*key)
^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 50, in get_namespace
getattr(ns, k)
File "/home/user/app/pgidocgen/util.py", line 605, in get
obj.dict[self.name] = result = self.fget(obj)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 171, in shadow_map
self._ensure_types()
File "/home/user/app/pgidocgen/namespace.py", line 160, in _ensure_types
_parse_types(dom, self.import_module(), self.namespace)
^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 186, in import_module
to_load = list(reversed(self.all_dependencies))
^^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/util.py", line 605, in get
obj.dict[self.name] = result = self.fget(obj)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 274, in all_dependencies
sub_ns = get_namespace(*key)
^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 50, in get_namespace
getattr(ns, k)
File "/home/user/app/pgidocgen/util.py", line 605, in get
obj.dict[self.name] = result = self.fget(obj)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 171, in shadow_map
self._ensure_types()
File "/home/user/app/pgidocgen/namespace.py", line 160, in _ensure_types
_parse_types(dom, self.import_module(), self.namespace)
^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 186, in import_module
to_load = list(reversed(self.all_dependencies))
^^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/util.py", line 605, in get
obj.dict[self.name] = result = self.fget(obj)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 274, in all_dependencies
sub_ns = get_namespace(*key)
^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 50, in get_namespace
getattr(ns, k)
File "/home/user/app/pgidocgen/util.py", line 605, in get
obj.dict[self.name] = result = self.fget(obj)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 171, in shadow_map
self._ensure_types()
File "/home/user/app/pgidocgen/namespace.py", line 160, in _ensure_types
_parse_types(dom, self.import_module(), self.namespace)
^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/namespace.py", line 190, in import_module
module = util.import_namespace(namespace, version)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/util.py", line 563, in import_namespace
import("gi.repository." + namespace).repository, namespace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.local/pipx/venvs/pgi-docgen/lib/python3.11/site-packages/pgi/importer.py", line 172, in load_module
introspection_module = get_introspection_module(namespace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.local/pipx/venvs/pgi-docgen/lib/python3.11/site-packages/pgi/module.py", line 123, in get_introspection_module
raise ImportError(
ImportError: Couldn't load shared library 'libharfbuzz-gobject.so.0'
Traceback (most recent call last):
File "/home/user/.local/bin/pgi-docgen", line 8, in
sys.exit(run())
^^^^^
File "/home/user/app/pgidocgen/main.py", line 34, in run
return main(sys.argv)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/main.py", line 30, in main
return args.func(args)
^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/create.py", line 38, in main
return _main_many(args.target, args.namespace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/create.py", line 29, in _main_many
subprocess.check_call(
File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/home/user/.local/pipx/venvs/pgi-docgen/bin/python', '/home/user/.local/bin/pgi-docgen', 'create', '_docs', 'Caribou-1.0']' returned non-zero exit status 1.
Traceback (most recent call last):
File "/home/user/.local/bin/pgi-docgen", line 8, in
sys.exit(run())
^^^^^
File "/home/user/app/pgidocgen/main.py", line 34, in run
return main(sys.argv)
^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/main.py", line 30, in main
return args.func(args)
^^^^^^^^^^^^^^^
File "/home/user/app/pgidocgen/create_debian.py", line 310, in main
subprocess.check_call(
File "/usr/lib/python3.11/subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['xvfb-run', '-a', '/home/user/.local/pipx/venvs/pgi-docgen/bin/python', '/home/user/.local/bin/pgi-docgen', 'create', '_docs', 'Anthy-9000', 'Caribou-1.0', 'Guestfs-1.0', 'Keybinder-3.0', 'LightDM-1', 'PackageKitGlib-1.0', 'Vips-8.0']' returned non-zero exit status 1.
trio@radio2:~/pgi-docgen/docker $
'''

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions