yousseb / meld

Meld for macOS
https://yousseb.github.io/meld/
GNU General Public License v2.0
2.29k stars 120 forks source link

3.21.0 (r4) Sonoma (pre-release) won't open on M1/Sonoma #151

Open TonyFarAAO opened 10 months ago

TonyFarAAO commented 10 months ago

Hi, I have an M1 mac updated to Sonoma 14.1.2. I tried installing the latest version. The App won't open - reporting "You can’t open the application “Meld.app” because this application is not supported on this Mac."

Rosetta 2 is installed and other intel 64bit software does run ok.

I tried running the program directly by executing "/Applications/Meld.app/Contents/MacOS/Meld" in a terminal window (which works for me in the previous version). With the latest version I get "Meld.app” cannot be opened because the developer cannot be verified."

This later message is normally dealt with by opening the App via the control-click menu, but the first problem stops that working.

Something about the packaging might be wrong!

agilebean commented 10 months ago

I can confirm the same issue on Sonoma 14.2 Beta on an M2.

hardyoyo commented 10 months ago

Can confirm as well, M2 on Sonoma

TasteOfTheWoods commented 10 months ago

Systems Settings --> Privacy and security --> at the bottom will show the latest failed to open app (meld). you can now choose to open it.

I'm on Sonoma 14.1.1, regular intel old mac. Meld opens for a second then crashes. It might be a differnt thing, and I can open a different bug in that case, but it seemed the above users didn't do ^ first. The meld app receives a SIGSEGV according to the stack trace

hardyoyo commented 10 months ago

Systems Settings --> Privacy and security --> at the bottom will show the latest failed to open app (meld). you can now choose to open it.

I'm on Sonoma 14.1.1, regular intel old mac. Meld opens for a second then crashes. It might be a differnt thing, and I can open a different bug in that case, but it seemed the above users didn't do ^ first. The meld app receives a SIGSEGV according to the stack trace

Please do not assume that we didn't do basic troubleshooting. I did, this app doesn't open on Apple Silicon. I have found an alternative app that works.

KjellKod commented 10 months ago

Good to hear

It wasnt clear from the original issue.

It would be interesting to know if M1 /M2 chip Mac's also generate the SIGSEGV, in which case the issue is uniform and not specific to chip-setup

TonyFarAAO commented 10 months ago

On my m1, if staring by double clocking, the console shows

error   19:22:59.451145+1100    Finder  LAUNCH:Application cannot be launched because its unsupported bit is set, org.gnome.meld node=<private> status=-10661
error   19:22:59.451158+1100    Finder  LAUNCH: Launch failure with -10661/ <private>
error   19:22:59.451668+1100    CoreServicesUIAgent handle LS launch error: {\n    AppPath = "/Applications/Meld.app";\n    ErrorCode = "-10661";\n}
TonyFarAAO commented 10 months ago

A dramatic change today when I tried to launch it from the terminal. Instead of what I got above, I got this (more useful) mess:

/Applications/Meld.app/Contents/Resources/__boot__.py:118: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html

** (process:81587): WARNING **: 19:30:56.282: Failed to load shared library '@executable_path/../Frameworks/libpango-1.0.0.dylib' referenced by the typelib: dlopen(@executable_path/../Frameworks/libpango-1.0.0.dylib, 0x0009): Library not loaded: /usr/local/opt/libpng/lib/libpng16.16.dylib
  Referenced from: <711B2F08-3C0C-30F5-B5A2-F9B163EC8824> /Applications/Meld.app/Contents/Frameworks/libfreetype.6.20.0.dylib
  Reason: tried: '/usr/local/opt/libpng/lib/libpng16.16.dylib' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/usr/local/opt/libpng/lib/libpng16.16.dylib' (no such file), '/usr/local/opt/libpng/lib/libpng16.16.dylib' (no such file), '/usr/local/lib/libpng16.16.dylib' (no such file), '/usr/lib/libpng16.16.dylib' (no such file, not in dyld cache)
Traceback (most recent call last):
  File "/Applications/Meld.app/Contents/Resources/__boot__.py", line 163, in <module>
    _run()
  File "/Applications/Meld.app/Contents/Resources/__boot__.py", line 86, in _run
    exec(compile(source, path, "exec"), globals(), globals())
  File "/Applications/Meld.app/Contents/Resources/meld", line 517, in <module>
    sys.exit(main())
             ^^^^^^
  File "/Applications/Meld.app/Contents/Resources/meld", line 508, in main
    check_requirements()
  File "/Applications/Meld.app/Contents/Resources/meld", line 276, in check_requirements
    r.check()
  File "/Applications/Meld.app/Contents/Resources/meld", line 243, in check
    mod = importlib.import_module(module)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "importlib/__init__.pyc", line 126, in import_module
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 674, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 634, in _load_backward_compatible
  File "/Applications/Meld.app/Contents/Resources/lib/python3.11/gi/importer.py", line 149, in load_module
    importlib.import_module('gi.repository.' + dep.split("-")[0])
  File "importlib/__init__.pyc", line 126, in import_module
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 674, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 634, in _load_backward_compatible
  File "/Applications/Meld.app/Contents/Resources/lib/python3.11/gi/importer.py", line 149, in load_module
    importlib.import_module('gi.repository.' + dep.split("-")[0])
  File "importlib/__init__.pyc", line 126, in import_module
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 674, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 634, in _load_backward_compatible
  File "/Applications/Meld.app/Contents/Resources/lib/python3.11/gi/importer.py", line 150, in load_module
    dynamic_module = load_overrides(introspection_module)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Applications/Meld.app/Contents/Resources/lib/python3.11/gi/overrides/__init__.py", line 118, in load_overrides
    override_mod = importlib.import_module(override_package_name)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "importlib/__init__.pyc", line 126, in import_module
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/Applications/Meld.app/Contents/Resources/lib/python3.11/gi/overrides/Pango.py", line 41, in <module>
    FontDescription = override(FontDescription)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Applications/Meld.app/Contents/Resources/lib/python3.11/gi/overrides/__init__.py", line 195, in override
    assert g_type != TYPE_NONE
           ^^^^^^^^^^^^^^^^^^^
AssertionError
2023-12-08 19:30:56.351 Meld[81587:4487546] Launch error
2023-12-08 19:30:56.351 Meld[81587:4487546] Launch error
See the py2app website for debugging launch issues

Notice the reference to "/usr/local/opt/libpng/lib/libpng16.16.dylib" (which I don't have)

Using "otool -L", I traced this to libfreetype.6.20.0.dylib and libfreetype.6.dylib in /Applications/Meld.app/Contents/Frameworks. So that is at least one issue.

stevejordi commented 10 months ago

Same for me.. Sonoma 14.1.2 on Intel and it doesn't work. I don't think it's really M1 related but much more system related

syneart commented 10 months ago

Meld 3.21.0 (r4) Sonoma at 14.1.2 with Apple silicon

Hope this snippet can help everyone; I've successfully used it myself and wanted to share it with all of you.

https://gist.github.com/syneart/4a8724cd479d31f0f742f499f807dcb2

Screenshot 2023-12-11 at 11 36 07

AndreiBasangiu-TomTom commented 8 months ago

Still crashing on Sonoma 14.2.1 with M2. Crashes when opening from command line with two folders as parameters. I have seen it run if I opened it without any input for comparison.

jonatan-ivanov commented 8 months ago

With meld 3.21.0.osx3 and macOS 14.2.1 (23C71) (Sonoma, Intel), I'm getting:

/usr/local/opt/git/libexec/git-core/mergetools/meld: line 172: 19388 Segmentation fault: 11  meld $LOCAL $REMOTE

I'm using meld with as a git difftool:

[diff]
    tool = meld
[difftool "meld"]
    cmd = meld $LOCAL $REMOTE

But it does not matter, it crashes purely through the UI too.

Some more info and a thread dump about the crashing thread (click to expand)... ``` Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: UNKNOWN_0xD at 0x0000000000000000 Exception Codes: 0x000000000000000d, 0x0000000000000000 Termination Reason: Namespace SIGNAL, Code 11 Segmentation fault: 11 Terminating Process: exc handler [24318] VM Region Info: 0 is not in any region. Bytes before following region: 4294967296 REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL UNUSED SPACE AT START ---> __TEXT 100000000-100006000 [ 24K] r-x/rwx SM=COW ...ts/MacOS/Meld Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libcairo.2.dylib 0x104b8ed3d _cairo_surface_release_source_image + 13 1 libcairo.2.dylib 0x104bb9899 DataProviderReleaseCallback + 25 2 CoreGraphics 0x7ff81b0227e1 data_release_info + 31 3 CoreGraphics 0x7ff81afdcabb data_provider_finalize + 66 4 CoreGraphics 0x7ff81afa57a4 data_provider_retain_count + 74 5 CoreFoundation 0x7ff81569ec56 _CFRelease + 495 6 CoreGraphics 0x7ff81b001ef9 image_finalize + 103 7 CoreFoundation 0x7ff81569eb80 _CFRelease + 281 8 libcairo.2.dylib 0x104bb9a01 SurfacePatternReleaseInfoFunc + 17 9 CoreFoundation 0x7ff81569eb80 _CFRelease + 281 10 CoreGraphics 0x7ff81afab750 color_finalize + 32 11 CoreFoundation 0x7ff81569eb80 _CFRelease + 281 12 CoreGraphics 0x7ff81b045a9d CG::DisplayListResourceColor::~DisplayListResourceColor() + 23 13 CoreGraphics 0x7ff81b045a78 CG::DisplayListResourceColor::~DisplayListResourceColor() + 14 14 CoreGraphics 0x7ff81b4fe07d std::__1::shared_ptr::~shared_ptr[abi:v160006]() + 49 15 CoreGraphics 0x7ff81b4f324b std::__1::__tree, CG::CompareResourceColor, std::__1::allocator>>::destroy(std::__1::__tree_node, void*>*) + 47 16 CoreGraphics 0x7ff81b4f3236 std::__1::__tree, CG::CompareResourceColor, std::__1::allocator>>::destroy(std::__1::__tree_node, void*>*) + 26 17 CoreGraphics 0x7ff81b4f3236 std::__1::__tree, CG::CompareResourceColor, std::__1::allocator>>::destroy(std::__1::__tree_node, void*>*) + 26 18 CoreGraphics 0x7ff81b4f3236 std::__1::__tree, CG::CompareResourceColor, std::__1::allocator>>::destroy(std::__1::__tree_node, void*>*) + 26 19 CoreGraphics 0x7ff81b04589f CG::DisplayList::~DisplayList() + 377 20 CoreFoundation 0x7ff81569eb80 _CFRelease + 281 21 libobjc.A.dylib 0x7ff8151359e9 object_cxxDestructFromClass(objc_object*, objc_class*) + 83 22 libobjc.A.dylib 0x7ff81512edbc objc_destructInstance + 96 23 libobjc.A.dylib 0x7ff81512ed57 _objc_rootDealloc + 62 24 AppKit 0x7ff81951ae66 -[NSViewBackingStoreImage dealloc] + 41 25 QuartzCore 0x7ff81dab5465 CA::release_objects(X::List*) + 21 26 QuartzCore 0x7ff81daa62d8 CA::Transaction::commit() + 1548 27 AppKit 0x7ff818d3d83d __62+[CATransaction(NSCATransaction) NS_setFlushesWithDisplayLink]_block_invoke + 285 28 AppKit 0x7ff81981375d ___NSRunLoopObserverCreateWithHandler_block_invoke + 41 29 CoreFoundation 0x7ff8155d4576 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 30 CoreFoundation 0x7ff8155d449a __CFRunLoopDoObservers + 493 31 CoreFoundation 0x7ff8155d3a1c __CFRunLoopRun + 850 32 CoreFoundation 0x7ff8155d3102 CFRunLoopRunSpecific + 557 33 HIToolbox 0x7ff81feab9d9 RunCurrentEventLoopInMode + 292 34 HIToolbox 0x7ff81feab7e6 ReceiveNextEventCommon + 665 35 HIToolbox 0x7ff81feab531 _BlockUntilNextEventMatchingListInModeWithFilter + 66 36 AppKit 0x7ff818be17b9 _DPSNextEvent + 880 37 AppKit 0x7ff8194d9f64 -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1304 38 libgdk-3.0.dylib 0x105966c4c poll_func + 172 39 libglib-2.0.0.dylib 0x10476e48d g_main_context_iterate + 445 40 libglib-2.0.0.dylib 0x10476e594 g_main_context_iteration + 100 41 libgio-2.0.0.dylib 0x1052c623d g_application_run + 541 42 libffi.6.dylib 0x1005cf8ac ffi_call_unix64 + 76 43 libffi.6.dylib 0x1005cee8f ffi_call + 927 44 _gi.cpython-36m-darwin.so 0x104317557 0x1042f8000 + 128343 45 _gi.cpython-36m-darwin.so 0x104318437 0x1042f8000 + 132151 46 libpython3.6m.dylib 0x10284e9f7 PyObject_Call + 87 47 libpython3.6m.dylib 0x10290b214 _PyEval_EvalFrameDefault + 23844 48 libpython3.6m.dylib 0x10290f0d3 0x102845000 + 827603 49 libpython3.6m.dylib 0x102910408 0x102845000 + 832520 50 libpython3.6m.dylib 0x10290ecad 0x102845000 + 826541 51 libpython3.6m.dylib 0x10290b0a4 _PyEval_EvalFrameDefault + 23476 52 libpython3.6m.dylib 0x10290f0d3 0x102845000 + 827603 53 libpython3.6m.dylib 0x102910408 0x102845000 + 832520 54 libpython3.6m.dylib 0x10290ecad 0x102845000 + 826541 55 libpython3.6m.dylib 0x10290b0a4 _PyEval_EvalFrameDefault + 23476 56 libpython3.6m.dylib 0x10291036a 0x102845000 + 832362 57 libpython3.6m.dylib 0x10290ecad 0x102845000 + 826541 58 libpython3.6m.dylib 0x10290b0a4 _PyEval_EvalFrameDefault + 23476 59 libpython3.6m.dylib 0x10290f0d3 0x102845000 + 827603 60 libpython3.6m.dylib 0x102905480 PyEval_EvalCode + 48 61 libpython3.6m.dylib 0x102903505 0x102845000 + 779525 62 libpython3.6m.dylib 0x102896566 _PyCFunction_FastCallDict + 150 63 libpython3.6m.dylib 0x10290ec10 0x102845000 + 826384 64 libpython3.6m.dylib 0x10290b0a4 _PyEval_EvalFrameDefault + 23476 65 libpython3.6m.dylib 0x10291036a 0x102845000 + 832362 66 libpython3.6m.dylib 0x10290ecad 0x102845000 + 826541 67 libpython3.6m.dylib 0x10290b0a4 _PyEval_EvalFrameDefault + 23476 68 libpython3.6m.dylib 0x10290f0d3 0x102845000 + 827603 69 libpython3.6m.dylib 0x102905480 PyEval_EvalCode + 48 70 libpython3.6m.dylib 0x1029d829c PyRun_FileExFlags + 236 71 libpython3.6m.dylib 0x1029d799a PyRun_SimpleFileExFlags + 522 72 Meld 0x100002ba6 0x100000000 + 11174 73 Meld 0x100000f9d main + 333 74 Meld 0x100000e24 start + 52 ```
stevejordi commented 8 months ago

Go check this and you have the fix https://gist.github.com/syneart/4a8724cd479d31f0f742f499f807dcb2

jonatan-ivanov commented 8 months ago

It did not work for me, I'm still getting the same error:

/usr/local/opt/git/libexec/git-core/mergetools/meld: line 172: 34604 Segmentation fault: 11  meld $LOCAL $REMOTE
hardyoyo commented 8 months ago

Go check this and you have the fix https://gist.github.com/syneart/4a8724cd479d31f0f742f499f807dcb2

Works for me, Sonoma, M2 MacBook pro, thanks!

dlitster commented 6 months ago

EDIT: my mistake, brew currently only has 3.21.0.osx3, downloading 3.21.0.osx4 manually works on an intel mac running sonoma.

ORIGINAL: I have meld installed from brew on intel, 14.2.1 and I'm getting a segfault when I try to launch meld from the cli with 2 folders as arguments. The script from syneart didn't help. I've attached my full segfault message from the Apple "problem report" dialog: meld_3.21.0.osx3_segfault.txt . If I launch from the cli, then try to select the folders via the UI, I get the same segfault, with this message at my terminal.

/Applications/Meld.app/Contents/Resources/lib/python3.6/gi/overrides/Gio.py:44: Warning: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Segmentation fault: 11

Environment:

Version:               3.21.0.osx3 (3.21.0.osx3)
Code Type:             X86-64 (Native)
Parent Process:        bash [1223]
OS Version:            macOS 14.2.1 (23C71)

brew list --cask --versions | grep meld
meld 3.21.0-r3,19

I'm happy to try alternate builds, debug flags, compile from sources if someone can point me in a direction.

This application is amazing.

pablovilchis commented 5 months ago

Systems Settings --> Privacy and security --> at the bottom will show the latest failed to open app (meld). you can now choose to open it. I'm on Sonoma 14.1.1, regular intel old mac. Meld opens for a second then crashes. It might be a differnt thing, and I can open a different bug in that case, but it seemed the above users didn't do ^ first. The meld app receives a SIGSEGV according to the stack trace

Please do not assume that we didn't do basic troubleshooting. I did, this app doesn't open on Apple Silicon. I have found an alternative app that works.

Any suggestion for an alternative app?