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....

Reply via email to