Opened 3 weeks ago

Last modified 2 weeks ago

#74179 new defect

mkvtoolnix: Questions RE install

Reported by: seamusdemora (Seamus) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.12.5
Keywords: tahoe Cc: ryandesign (Ryan Carsten Schmidt), i0ntempest
Port: mkvtoolnix

Description (last modified by seamusdemora (Seamus))

I've just gone through the installation of the mkvtoolnix package on my Tahoe machine. The current status is that mkvtoolnix has been installed, but none of the "post-install" instructions have been executed at this point - pending answers to my questions.

Also - While I'd prefer to have mkvtoolnix installed on my Mac, I can also run it on my Linux box. I say this because of my present uncertainty wrt the MacPort installation, and b/c I don't want to wind up with a completely broken port system - as I currently have on my Mojave Mac! That said, my questions follow:

  1. mkvtoolnix has the +qtgui variant. I was overwhelmed by the number of dependencies I'd have to install using the sudo port install mkvtoolnix +qtgui command, and so I decided to drop that variant from the install. Accordingly, I ran the command: sudo port install mkvtoolnix. Surprisingly, the dependencies were the same (AFAICT) with or without the +qtgui option!**

Q1 - Can someone explain why this is??

  1. I've been using ffmpeg ver 7 for some time as I like to be "fairly current", but not "bleeding edge". I am also using ffmpeg ver 7 in a few shell scripts I've created for processing video & audio files. However, installation of mkvtoolnix included ffmpeg ver 8 as a dependency. I've tested my scripts, and run ffmpeg ver 7 from the CLI --- it seems that ffmpeg7 is "alive and well" on my system - so far.

However: In the "post install" instructions for mkvtoolnix, there is this statement that frankly baffles me completely:

     To compile and link with ffmpeg8, add -I/opt/local/libexec/ffmpeg8/include and -L/opt/local/libexec/ffmpeg8/lib to your compile command.
     For builds using pkg-config, add /opt/local/libexec/ffmpeg8/lib/pkgconfig to $PKG_CONFIG_PATH.

Q2.1 - WRT To compile and link with ffmpeg8 ...: AFAICS, mkvtoolnix has already been compiled, and that being the case, how am I to compile it again?!?!

Q2.2 - WRT For builds using pkg-config ...: How do I tell if I am using pkg-config or not?? The documentation says this re pkg-config:

     Default: ???

Q2.3 - Will mkvtoolnix "fall back" to ffmpeg ver 7 if ffmpeg8 is NOT compiled and linked with mkvtoolnix??

Change History (4)

comment:1 Changed 3 weeks ago by seamusdemora (Seamus)

Description: modified (diff)

comment:2 Changed 3 weeks ago by seamusdemora (Seamus)

Description: modified (diff)

comment:3 in reply to:  description ; Changed 3 weeks ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign i0ntempest added
Keywords: tahoe added; mkvtoolnix ffmpeg8 removed
Summary: Questions RE install of 'mkvtoolnix' port on macOS Tahoemkvtoolnix: Questions RE install

Questions about MacPorts are best asked on the macports-users mailing list. The issue tracker is for bug reports and feature requests.

Replying to seamusdemora:

  1. mkvtoolnix has the +qtgui variant. I was overwhelmed by the number of dependencies I'd have to install using the sudo port install mkvtoolnix +qtgui command, and so I decided to drop that variant from the install. Accordingly, I ran the command: sudo port install mkvtoolnix. Surprisingly, the dependencies were the same (AFAICT) with or without the +qtgui option!**

Q1 - Can someone explain why this is??

As shown in the output of port variants mkvtoolnix (the [+] before qtqui), the qtgui variant is enabled by default. If you want to install without that variant, you have to disable it explicitly:

sudo port install mkvtoolnix -qtgui
  1. I've been using ffmpeg ver 7 for some time as I like to be "fairly current", but not "bleeding edge". I am also using ffmpeg ver 7 in a few shell scripts I've created for processing video & audio files. However, installation of mkvtoolnix included ffmpeg ver 8 as a dependency. I've tested my scripts, and run ffmpeg ver 7 from the CLI --- it seems that ffmpeg7 is "alive and well" on my system - so far.

However: In the "post install" instructions for mkvtoolnix, there is this statement that frankly baffles me completely:

     To compile and link with ffmpeg8, add -I/opt/local/libexec/ffmpeg8/include and -L/opt/local/libexec/ffmpeg8/lib to your compile command.
     For builds using pkg-config, add /opt/local/libexec/ffmpeg8/lib/pkgconfig to $PKG_CONFIG_PATH.

Q2.1 - WRT To compile and link with ffmpeg8 ...: AFAICS, mkvtoolnix has already been compiled, and that being the case, how am I to compile it again?!?!

Q2.2 - WRT For builds using pkg-config ...: How do I tell if I am using pkg-config or not?? The documentation says this re pkg-config:

     Default: ???

You can ignore these notes. They are printed by the ffmpeg8 port and are intended to help those people who are trying to compile their own software, outside of MacPorts, using ffmpeg8. Any ports that use ffmpeg8 are already using the correct method internally.

Q2.3 - Will mkvtoolnix "fall back" to ffmpeg ver 7 if ffmpeg8 is NOT compiled and linked with mkvtoolnix??

As far as I can tell, the mkvtoolnix port does not use any version of ffmpeg. I can find no occurrences of "ffmpeg" in the mkvtoolnix Portfile.

Ports that use ffmpeg8, or in general ports that depend on any port, always use that port, unless the port author has offered variants to let you change that. For an example of a port that lets you choose the ffmpeg version using variants, take a look at the output of port variants opencv. Most ports won't offer you that choice, and in general it's not our intention to offer such choice just because such a choice would be possible to offer. Offering such choice gives more opportunities for things to go wrong, which results in more tech support burden for us.

comment:4 in reply to:  3 Changed 2 weeks ago by seamusdemora (Seamus)

Replying to ryandesign:

Questions about MacPorts are best asked on the macports-users mailing list. The issue tracker is for bug reports and feature requests.

Replying to seamusdemora:

  1. mkvtoolnix has the +qtgui variant. I was overwhelmed by the number of dependencies I'd have to install using the sudo port install mkvtoolnix +qtgui command, and so I decided to drop that variant from the install. Accordingly, I ran the command: sudo port install mkvtoolnix. Surprisingly, the dependencies were the same (AFAICT) with or without the +qtgui option!**

Q1 - Can someone explain why this is??

As shown in the output of port variants mkvtoolnix (the [+] before qtqui), the qtgui variant is enabled by default. If you want to install without that variant, you have to disable it explicitly:

sudo port install mkvtoolnix -qtgui

OK, thanks - my bad... I've learned what this line in the documentation (https://guide.macports.org/#using.variants) actually means:

Variant lines that have a + are enabled and those with - are disabled.

I've been confused about that - I understood that all variants had to be specified at install time... silly me.

  1. I've been using ffmpeg ver 7 for some time as I like to be "fairly current", but not "bleeding edge". I am also using ffmpeg ver 7 in a few shell scripts I've created for processing video & audio files. However, installation of mkvtoolnix included ffmpeg ver 8 as a dependency. I've tested my scripts, and run ffmpeg ver 7 from the CLI --- it seems that ffmpeg7 is "alive and well" on my system - so far.

However: In the "post install" instructions for mkvtoolnix, there is this statement that frankly baffles me completely:

     To compile and link with ffmpeg8, add -I/opt/local/libexec/ffmpeg8/include and -L/opt/local/libexec/ffmpeg8/lib to your compile command.
     For builds using pkg-config, add /opt/local/libexec/ffmpeg8/lib/pkgconfig to $PKG_CONFIG_PATH.

Q2.1 - WRT To compile and link with ffmpeg8 ...: AFAICS, mkvtoolnix has already been compiled, and that being the case, how am I to compile it again?!?!

Q2.2 - WRT For builds using pkg-config ...: How do I tell if I am using pkg-config or not?? The documentation says this re pkg-config:

     Default: ???

You can ignore these notes. They are printed by the ffmpeg8 port and are intended to help those people who are trying to compile their own software, outside of MacPorts, using ffmpeg8. Any ports that use ffmpeg8 are already using the correct method internally.

Q2.3 - Will mkvtoolnix "fall back" to ffmpeg ver 7 if ffmpeg8 is NOT compiled and linked with mkvtoolnix??

As far as I can tell, the mkvtoolnix port does not use any version of ffmpeg. I can find no occurrences of "ffmpeg" in the mkvtoolnix Portfile.

Hmm... well, according to this command:

% sudo port install mkvtoolnix +qtgui
--->  Upgrading already installed dependencies of mkvtoolnix
--->  Computing dependencies for mkvtoolnix
The following dependencies will be installed: 
...
ffmpeg8 +gpl2+vmaf
...
%

Does that line mean something different than what it says - or am I reading it incorrectly??

Ports that use ffmpeg8, or in general ports that depend on any port, always use that port, unless the port author has offered variants to let you change that. For an example of a port that lets you choose the ffmpeg version using variants, take a look at the output of port variants opencv. Most ports won't offer you that choice, and in general it's not our intention to offer such choice just because such a choice would be possible to offer. Offering such choice gives more opportunities for things to go wrong, which results in more tech support burden for us.

Right...

Note: See TracTickets for help on using tickets.