fakexrandr
fakexrandr copied to clipboard
fakexrandr-manage crashes 'WARNING **: Failed to load shared library 'libgdk-3.so.0' referenced by the typelib /lib64/libgdk-3.so.0: undefined symbol: XRRGetMonitors'
fakexrandr-manage fails to run on Fedora 27 with the following error:
** (process:1208): WARNING **: Failed to load shared library 'libgdk-3.so.0' referenced by the typelib: /lib64/libgdk-3.so.0: undefined symbol: XRRGetMonitors
Traceback (most recent call last):
File "/usr/bin/fakexrandr-manage", line 37, in <module>
from gi.repository import Gtk, Gdk
File "/usr/lib64/python2.7/site-packages/gi/importer.py", line 145, in load_module
importlib.import_module('gi.repository.' + dep.split("-")[0])
File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/usr/lib64/python2.7/site-packages/gi/importer.py", line 146, in load_module
dynamic_module = load_overrides(introspection_module)
File "/usr/lib64/python2.7/site-packages/gi/overrides/__init__.py", line 125, in load_overrides
override_mod = importlib.import_module(override_package_name)
File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/usr/lib64/python2.7/site-packages/gi/overrides/Gdk.py", line 81, in <module>
Color = override(Color)
File "/usr/lib64/python2.7/site-packages/gi/overrides/__init__.py", line 202, in override
assert g_type != TYPE_NONE
AssertionError
Looks like either your libgdk-3.0 isn't liked against libxrandr, which would be a bug in your GTK package or upstream GTK (check using ldd /lib64/libgdk-3.so.0 | grep Xrandr
) or you are using an outdated version of the fakexrandr library that doesn't contain the XRRGetMonitors call yet. Fakexrandr builds the wrapper around xrandr automatically based on the Xrandr.h header file, so it always contains any new APIs automatically, including XRRGetMonitors - so simply rebuilding it could give you a working version.