Crash if there is a space in the application's path

Started by OnETime, November 18, 2020, 05:31:46 PM

Previous topic - Next topic

OnETime

First time user, I added Avidemux to my folder called "Video Tools" in Applications. Avidemux immediately crashes (fails to start up), and in the console it says "death of untracked active application". After removing the space from the folder name, changing it to "VideoTools", it works. Tested with versions 2.7.4 and 2.7.6 on Mojave. Please fix this if possible, it took some time to figure it out and I almost gave up on using Avidemux... Thanks.

eumagga0x2a

This definitely works with a build generated from the current code as the wrapper script, which probably is at fault here, has been removed from code. I've tested Avidemux compiled from the latest git master and installed in "/Applications/Video Tools" with the app bundle directory renamed to "Avidemux 2.7.7" (underscore replaced with a space) and Avidemux launches and runs just fine.

The problem is only that there might be no official Mojave-compatible builds at least at the moment (but possibly anymore). The libraries from Homebrew, which Avidemux includes in its app bundle, are not backward-compatible. While it was trivial to generate Avidemux itself with deployment target set to High Sierra, all plugins depending on Homebrew libraries could not be loaded = a confusingly broken app.

You could try the latest build (currently from Nov. 15) from https://avidemux.org/nightly/osx_catalina/ but I would not expect it to run as it was built with deployment target unaltered, i.e. Catalina. If it doesn't run, the only option would be to compile Avidemux on your system. This is pretty easy but requires a huge amount of free storage space (>30 GiB, if I am not mistaken) entirely for the Apple's Xcode app or an Apple developer account to be able to install just the tiny part of the Xcode app we actually need.

OnETime

You're right that the November 15 2.7.7 nightly build doesn't run on Mojave, so I can't try it. If it's fixed already, that's great. The "2.7.6 Catalina" ran ok for me on Mojave, though I just did some simple cutting. Hopefully the official 2.7.7 release will too.

In the meantime it might be nice to mention it, if there's a "known problems" list or "readme" somewhere. Or maybe just here is ok. I do have Xcode installed, but it's easier to just remove the space! It was just figuring out the problem that took some time...


eumagga0x2a

#3
Quote from: OnETime on November 18, 2020, 08:54:36 PMI do have Xcode installed, but it's easier to just remove the space!

This will neither make all the plugins broken with official builds on macOS < Catalina work, nor solve the numerous issues fixed since 2.7.6. If you have Homebrew already installed too, then you are good to go --> https://avidemux.org/smif/index.php?msg=88429

Quote from: OnETime on November 18, 2020, 08:54:36 PMHopefully the official 2.7.7 release will too.

Hopefully*, but don't hold your breath. This is not only completely out of my control but I am also entirely unable to help with any issues if the current code has problems on older macOS releases.

*) This would imply a separate release build for Mojave. The Catalina (or Big Sur, who knows) release build won't run on anything older.

OnETime

I do have Homebrew installed, so I followed those instructions and got a 2.7.7 that runs, and works with the space in the path! Thanks... Is there a way I should check if plugins etc. are broken?

eumagga0x2a

Quote from: OnETime on November 19, 2020, 11:20:00 PMI followed those instructions and got a 2.7.7 that runs, and works with the space in the path!

Great, thank you for the feedback.

Quote from: OnETime on November 19, 2020, 11:20:00 PMIs there a way I should check if plugins etc. are broken?

You would encounter messages similar to

Unable to load [/Applications/Avidemux_2.7.7.app/Contents/MacOS/./../lib/ADM_plugins6/videoFilters/libADM_vf_ssa.dylib]: dlopen(/Applications/Avidemux_2.7.7.app/Contents/MacOS/./../lib/ADM_plugins6/videoFilters/libADM_vf_ssa.dylib, 6): Symbol not found: ____chkstk_darwin
  Referenced from: /Applications/Avidemux_2.7.7.app/Contents/MacOS/./../Frameworks/libfreetype.6.dylib (which was built for Mac OS X 10.15)
  Expected in: /usr/lib/libSystem.B.dylib
 in /Applications/Avidemux_2.7.7.app/Contents/MacOS/./../Frameworks/libfreetype.6.dylib

in /tmp/admlog.txt (or in the Terminal, when launching Avidemux on the command line).

OnETime

Ok, I don't see any messages like that.

Just to be clear though, I don't see them with 2.7.6 Catalina from the download page either. I thought you said above that the plugins were broken on the official Catalina build if you use it on Mojave. Maybe I misunderstood, that's only for 2.7.7?

eumagga0x2a

Quote from: OnETime on November 20, 2020, 10:57:47 PMI thought you said above that the plugins were broken on the official Catalina build if you use it on Mojave.

I assumed they would be broken on Mojave as they are known to be broken on High Sierra. Can you please confirm that the subtitles plugin in the last release (2.7.6) works on Mojave?

Recent official 2.7.7 builds don't run on anything older than the system where they have been compiled, so it doesn't matter whether bundled Homebrew libraries can be loaded or not.

OnETime

As far as I can tell, subtitles are broken on 2.7.6 in general, either on Catalina or Mojave, and also in the older 2.7.4 Mojave release on Mojave.

Starting it from the terminal, I see this in the output from 2.7.6, on Mojave:
[ADM_vf_plugin] Plugin loaded version 1.0.1, name ssa/SSA/ASS/SRT

I can load a video and add the subtitles filter, and it goes through all the motions including converting an .srt to ssa, and I don't see any error messages. But if I do "preview", or output the file, there aren't any subtitles on it. However, the same thing happens when I try 2.7.6 on a Catalina virtual machine, as well as the older 2.7.4 Mojave release on Mojave. So I can't confirm that it's due to a Catalina-Mojave mismatch. It does work on the 2.7.7 version I compiled.

At this point though, it's all moot for me, because all versions crash when opening the file that I actually need to process right now...

eumagga0x2a

Quote from: OnETime on November 21, 2020, 02:20:39 PMStarting it from the terminal, I see this in the output from 2.7.6, on Mojave:
[ADM_vf_plugin] Plugin loaded version 1.0.1, name ssa/SSA/ASS/SRT

Thanks, this means that Homebrew libs in the official Catalina build node are compatible with Mojave. Maybe a hint at a Homebrew installation which hasn't been updated since ages??