On 17.03.21 11:07, Ryan Schmidt wrote:
On Mar 17, 2021, at 04:07, joerg van den hoff wrote:
On 17.03.21 05:07, Ryan Schmidt wrote:
On Mar 16, 2021, at 13:47, joerg van den hoff wrote:
"** (meld:70489): WARNING **: 19:46:07.080: Failed to load shared library
'./gtksourceview/libgtksourceview-4.0.dylib' referenced by the typelib:
dlopen(./gtksourceview/libgtksourceview-4.0.dylib, 9): image not found
Meld requires GtkSourceView 4.0 or higher.
"
Hmm.
That's a relative path, but I don't know what it's meant to be relative to.
yes, I noted this (and suspected that some (environment?) variable might not be
set correctly somewhere so that $PWD is used as fallback in its place when
constructing that path).
On my system, the gtksourceview4 port installs the file
/opt/local/lib/libgtksourceview-4.0.dylib. Do you have that file?
yes I do:
-rwxr-xr-x 1 root admin 803912 Mar 9 22:42
/opt/local/lib/libgtksourceview-4.0.dylib
Hmm again.
meld works fine for me on macOS High Sierra. What macOS and Xcode version are
you using?
10.15.7 and 12.4
meld is a python script. I added some debugging to mine: right before this line:
if version < (self.major_version, self.minor_version):
I added this line:
print("version of %s is %s" % (mod.__name__, version))
Then when I started meld it says:
version of sys is sys.version_info(major=3, minor=8, micro=8,
releaselevel='final', serial=0)
version of gi.repository.Gtk is (3, 24)
version of gi.repository.GLib is (2, 58)
version of gi.repository.GtkSource is (4, 0)
version of gi is (3, 38, 0)
version of cairo is (1, 20, 0)
if I do the same I get this output:
version of sys is sys.version_info(major=3, minor=8, micro=8,
releaselevel='final', serial=0)
version of gi.repository.Gtk is (3, 24)
version of gi.repository.GLib is (2, 58)
followed by the " Failed to load shared library
'./gtksourceview/libgtksourceview-4.0.dylib'" error.
The "gi" in gi.repository.GtkSource alerts me to the fact that this is created
by gobject-introspection and is the file /opt/local/share/gir-1.0/GtkSource-4.gir. I
think there is something wrong with your /opt/local/share/gir-1.0/GtkSource-4.gir.
Specifically in mine, there is the line:
shared-library="/opt/local/lib/libgtksourceview-4.0.dylib"
and I think in yours the line is different. And I think it's this bug:
and I think you are very right :). indeed, that line in my case reads
(surprise!)
shared-library="./gtksourceview/libgtksourceview-4.0.dylib"
https://trac.macports.org/ticket/61792
and this bug:
https://trac.macports.org/ticket/62391
I think gobject-introspection is just broken for the moment. (Or it is fixed
but we forgot to revbump all the affected ports to rebuild them.)
I guess you could manually edit affected .gir files to fix the shared-library
paths to be the correct absolute ones.
unfortunately, that does not help. I still get the " Failed to load shared library
'./gtksourceview/libgtksourceview-4.0.dylib' referenced by the typelib:
dlopen(./gtksourceview/libgtksourceview-4.0.dylib, 9): image not found" error -- despite having
fixed the/opt/local/share/gir-1.0/GtkSource-4.gir to provide
shared-library="/opt/local/lib/libgtksourceview-4.0.dylib
and grepping through the other gir-files in that location seems to indicate that this is the only
reference to that dylib file :|.
so still no luck...
I don't know about this stuff (gobject-introspection): is it required to reboot or restart some
process to make changes to the gir file effective? right now it seems `meld' gets that relative path
all the same or from somewhere else....