News:

--

Main Menu

Howto install Avidemux 2.6 on OSX using Homebrew

Started by nibbles, November 05, 2011, 02:57:12 AM

Previous topic - Next topic

Jan Gruuthuse

Upload dmg package to rapidshare or similar web service and provide a publicly available download link for it.

Thanks again, think some user(s) will test this and let us know how it went.

styrol

Quote from: mean on May 22, 2013, 02:24:32 PM
The only things remaining is to have somebody else to test it on another mac
Here I am... :-)

Shotokan81

Thanks Jan, I would prefer not to have to create an account on rapid share if possible.

Styrol, thanks for your offer, i suggested an alternative method in pm. Sorry for pm you without asking first, please let me know if this suits you or i'll look for something else (or if you have an alternative please let me know).

Regards

Jan Gruuthuse

#93
I do understand, created an upload folder here: ... where you can upload without registering.


Shotokan81

Thank you

Let's see Styrol feedback, and then maybe we can share the package.

Regards

styrol

Quote from: mean on May 22, 2013, 02:24:32 PM
The only things remaining is to have somebody else to test it on another mac
Quote from: Shotokan81 on May 26, 2013, 12:36:53 PM
Let's see Styrol feedback, and then maybe we can share the package.

I did have access to an untouched 10.7.5 system yesterday (meaning no homebrew or macports was installed).
The application does not open, this is what Console says:

[0x0-0x7d07d].Avidemux.org: dyld: Library not loaded: /usr/local/lib/QtGui.framework/Versions/4/QtGui
[0x0-0x7d07d].Avidemux.org:   Referenced from: /Users/user/Desktop/Avidemux2.6.app/Contents/MacOS/../Resources/bin/avidemux
[0x0-0x7d07d].Avidemux.org:   Reason: image not found
[0x0-0x7d07d].Avidemux.org: /Users/user/Desktop/Avidemux2.6.app/Contents/MacOS/Avidemux2.6.app: line 3:  1969 Trace/BPT trap: 5       $DIR/../Resources/bin/avidemux

So Avidemux tries to load QtGui from
/usr/local/lib/QtGui.framework/Versions/4/QtGui
instead of
/Applications/Avidemux2.6.app/Contents/Frameworks/QtGui.framework/Versions/4/QtGui
(respectively the corresponding relative path)

So there is still a problem.

(On my own system it runs, but I have QtGui.framework installed in usr/local/lib by Homebrew)

Shotokan81

Thank you Styrol for your tests and sorry I did not manage to find out myself.

@Mean, I could reproduce the error: simply changing the file name from
/usr/local/lib/QtGui.framework/Versions/4/QtGui
to
/usr/local/lib/QtGui.framework/Versions/4/QtGui2
and the application does not launch.

If there is a solution to test, I can try and test locally using the above.

May I be correct to guess it relates to this function in the python script osx_libs.py?
changeQtPluginLinkPath(qtPluginFolder)

Is there a way in the source folder to see if the link has been updated in a source file to be used for compilation?

Regards

mean

To be sure, for each file in Application/xxx/bin, Application/xxx/lib
the output of
otool -L xxxxx
should NOT contain anything related to /usr/local or /home/xxxx

The osx_libs.py script should remap all the references to application relative path
Here it seems the Qt ones are not remapped correctly

No need to do the whole bootstrap to tune it, you can just run the osx_libs.py script until it is ok
THEN rerun bootstrap one last time

mitchde

I think same prob is in the available nigthy build (at least for me). app crashes and lastest things it does was using QT stuff.
http://avidemux.org/nightly/osx/


0   libsystem_kernel.dylib        0x00007fff8bb6e212 __pthread_kill + 10
1   libsystem_c.dylib              0x00007fff8e83db54 pthread_kill + 90
2   libsystem_c.dylib              0x00007fff8e881dce abort + 143
3   QtCore                        0x000000010b6c6cf5 qt_message_output(QtMsgType, char const*) + 117
4   QtCore                        0x000000010b6c6ed7 qt_message(QtMsgType, char const*, __va_list_tag*) + 183
5   QtCore                        0x000000010b6c709a qFatal(char const*, ...) + 170
6   QtGui                          0x000000010baf2e95 QWidgetPrivate::QWidgetPrivate(int) + 853
7   QtGui                          0x000000010bb0255b QWidget::QWidget(QWidget*, QFlags<Qt::WindowType>) + 59
8   QtGui                          0x000000010ba60d39 QDesktopWidget::QDesktopWidget() + 41
9   QtGui                          0x000000010baaaf2b QApplication::desktop() + 59
10  QtGui                          0x000000010ba5c1db flipPoint(CGPoint const&) + 27
11  QtGui                          0x000000010ba57775 -[QCocoaWindowDelegate windowDidMove:] + 133
12  com.apple.CoreFoundation      0x00007fff862eaeda _CFXNotificationPost + 2554
13  com.apple.Foundation          0x00007fff903c67b6 -[NSNotificationCenter postNotificationName:object:userInfo:] + 64
14  com.apple.AppKit              0x00007fff8827a341 -[NSWindow _setFrameCommon:display:stashSize:] + 1973
15  com.apple.AppKit              0x00007fff881d13fe -[NSWindow setFrameOrigin:] + 406
16  QtGui                          0x0000000103e03217 QWidgetPrivate::setGeometry_sys(int, int, int, int, bool) + 887
17  QtGui                          0x0000000103eaf397 QWidget::resize(QSize const&) + 215
18  QtGui                          0x0000000103ea8c9a QWidget::setMinimumSize(int, int) + 186
19  QtGui                          0x0000000103e8d431 QLayout::activate() + 497
20  QtGui                          0x0000000103eabc42 QWidget::adjustSize() + 66
21  avidemux 


I dont know if it happens by using QT libs from /Library/Frameworks/ instead of using libs from app path.


       0x108d41000 -        0x108decfff +QtScriptTools (4.8.4) <2CEB51EC-98F2-F978-5477-40625DCBDC3B> /Library/Frameworks/QtScriptTools.framework/Versions/4/QtScriptTools
       0x108e48000 -        0x108e88ff7 +libADM_script_tinyPy.dylib (0) <052F098A-EB0F-3E62-9B57-2898B6F00B0E> /Applications/VIDEO/Avidemux2.6.app/Contents/Resources/lib/ADM_plugins6/scriptEngines/libADM_script_tinyPy.dylib
       0x10b100000 -        0x10b2e3fff +QtScript (0) <A9DA6776-7B4C-3FC3-B1F0-E1361FA0118D> /Applications/VIDEO/Avidemux2.6.app/Contents/Frameworks/QtScript.framework/Versions/4/QtScript
       0x10b396000 -        0x10b5efff7 +QtScript (4.8.4) <73EE233F-4C49-0AEC-A02F-D8402CE0F018> /Library/Frameworks/QtScript.framework/Versions/4/QtScript
       0x10b6aa000 -        0x10b983fef +QtCore (4.8.4) <066143BB-EB51-053C-84CE-D3EBDA45466A> /Library/Frameworks/QtCore.framework/Versions/4/QtCore
       0x10ba22000 -        0x10c43dfef +QtGui (4.8.4) <7E72D670-7AEF-3C9A-C7E4-E60A6167CC68> /Library/Frameworks/QtGui.framework/Versions/4/QtGui

mean

Try removing
Avidemux.app/Contents/Resources/lib/ADM_plugins6/scriptEngines/libADM_script_qt.dylib

Shotokan81

Quote from: mean on May 31, 2013, 03:12:28 PM
To be sure, for each file in Application/xxx/bin, Application/xxx/lib
the output of
otool -L xxxxx
should NOT contain anything related to /usr/local or /home/xxxx

The osx_libs.py script should remap all the references to application relative path
Here it seems the Qt ones are not remapped correctly

No need to do the whole bootstrap to tune it, you can just run the osx_libs.py script until it is ok
THEN rerun bootstrap one last time

Thank you. I executed the below command in bin (under the app folder):
for file in ./*; do echo "$file"; otool -L $file | grep -e '/usr/local' -e '/home'; done

It gave the below results:
./ADM_plugins6
otool: can't map file: ./ADM_plugins6 (Invalid argument)
./libADM6avcodec.54.dylib
./libADM6avformat.54.dylib
./libADM6avutil.52.dylib
./libADM6postproc.52.dylib
./libADM6swscale.2.dylib
./libADM_UIQT46.dylib
/usr/local/lib/QtGui.framework/Versions/4/QtGui (compatibility version 4.8.0, current version 4.8.4)
/usr/local/lib/QtCore.framework/Versions/4/QtCore (compatibility version 4.8.0, current version 4.8.4)
/usr/local/lib/QtOpenGL.framework/Versions/4/QtOpenGL (compatibility version 4.8.0, current version 4.8.4)
./libADM_audioParser6.dylib
./libADM_core6.dylib
./libADM_coreAudio6.dylib
./libADM_coreAudioDevice6.dylib
./libADM_coreAudioEncoder6.dylib
./libADM_coreAudioFilterAPI6.dylib
./libADM_coreDemuxer6.dylib
./libADM_coreDemuxerMpeg6.dylib
./libADM_coreImage6.dylib
./libADM_coreImageLoader6.dylib
./libADM_coreJobs.dylib
./libADM_coreMuxer6.dylib
./libADM_coreScript.dylib
./libADM_coreSocket6.dylib
./libADM_coreSqlLight3.dylib
./libADM_coreUI6.dylib
./libADM_coreUtils6.dylib
./libADM_coreVideoCodec6.dylib
./libADM_coreVideoEncoder6.dylib
./libADM_coreVideoFilter6.dylib
./libADM_render6_qt4.dylib
/usr/local/lib/QtOpenGL.framework/Versions/4/QtOpenGL (compatibility version 4.8.0, current version 4.8.4)
/usr/local/lib/QtGui.framework/Versions/4/QtGui (compatibility version 4.8.0, current version 4.8.4)
/usr/local/lib/QtCore.framework/Versions/4/QtCore (compatibility version 4.8.0, current version 4.8.4)


I did not find how to make it recursive yet.

However, I am not sure what you mean from there.
I should run the script osx_libs.py from the app folder (under applications)?
Then I should recompile from the app folder (under applications)?
I am asking because the source files are not in the application.

Or should I do it from the source folder?
I am asking because this is what I did already to get this app.
Do you mean I should run the script several times until the references disappear from the source folder, and then compile?

mean

I mean you could do the following several times :
* Tweak the script
* Run the script
* Check with otool

mitchde

Quote from: mean on June 02, 2013, 10:12:40 AM
Try removing
Avidemux.app/Contents/Resources/lib/ADM_plugins6/scriptEngines/libADM_script_qt.dylib

THANKS - no no more crashing!

styrol

Quote from: nibbles on December 08, 2011, 08:13:21 AM
Info On Building 2.6.0 or 2.6svn Using Homebrew

  Save this link as:  /usr/local/Library/Formula/avidemux3.rb

To brew Avidemux-2.6.0 after you've saved that link:

[..]

And finally you can build 2.6svn from the master repo (recommended):


brew rm -f avidemux3
brew install --HEAD avidemux3


No formula has to be installed manually anymore, the formula is delivered by Homebrew itself now and its name is "avidemux" (not avidemux3 anymore). After installation an App will be created in your Applications folder and there is finally a audio output device available (you have to select it in the preferences of the App: Edit -> Preferences -> Audio -> AudioDevice: "CoreAudio").

(1) Install XCode and the Command Line Tools of XCode following the step 1 of this manual.

(2) Install Homebrew using the following Terminal command:
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

(3) Install the latest version of Avidemux (nightly version, recommended) using the following Terminal command:
brew install --HEAD avidemux

(4) When the installation has finished, you are asked to make an alias of the app in your Application folder using this command:
brew linkapps

--------------------------------
If you want to update Avidemux to the latest nightly version:
brew rm -f avidemux
brew install --HEAD avidemux


If you want to install the "stable" version of Avidemux (Milestone):
brew install avidemux

If you encounter permission errors, refer to the manual mentioned in step 1.