suggestions

Mojca Miklavec mojca at macports.org
Wed Feb 20 07:03:28 UTC 2019


Dear Chilli,

Welcome to MacPorts.

On Wed, 20 Feb 2019 at 01:36, chilli.namesake at gmail.com wrote:
>
> A little embarrassing, but I need some direction. I realize macports user support does not really exactly support the port I need (ffmpeg),

We don't have any official user support :)
We have just a bunch of subscribers / volunteers who read mails, and a
bunch of people helping fix the ports, with quite a bit of an overlap
:)

> I am running snow leopard 10.6, and while I don't expect support to continue forever

The support will continue as long as we have volunteer willing to fight :)
This is entirely unrelated to how long Apple will sell its DVDs, the
security patches are no longer available for many many many years
already.

> ffmpeg and a few other ports are critical to my scripts, and I broke ffmpeg, and can't rev-upgrade. I went a long time without upgrading,

In the case of MacPorts I would say that too long of a time period
without upgrading might be bad. If anything, if you don't upgrade for
more than a year, you might not be able to upgrade at all since we may
not keep compatibility layer for upgrades for more than a year.
Generally it might go well, but there's some chance that it breaks
(the longer you wait, the more likely it is) and then you would need
to install from scratch or do some trickery. Also, if you upgrade on
regular basis, it might be easier to roll back the older versions,
report the problem immediately, and figure out how to fix it faster.

But yes, 10.6 is not the main focus, and not that many people are
running it, so there's a chance that you'll experience some issues
with individual upgrades, I just say that those issues might be easier
to fix than if you don't upgrade for two years.

> ffmpeg is still broken... the error should look familiar when I call ffmpeg, I get
>
> dyld: Library not loaded: /opt/local/lib/libvpx.5.dylib
>  Referenced from: /opt/local/bin/ffmpeg
>  Reason: image not found
> Trace/BPT trap

This means that it's referencing an older version of the library which
was already upgraded.

> the rebuilds for ffmpeg fail with
>
> Error: Failed to fetch libsdl2: Building libsdl2 @2.0.9 on Mac OS X 10.6 requires the MacOSX10.7.sdk to be present in /Developer/SDKs/
>
>
> So my understanding, if correct, is a dependency of the next (or current) rev of ffmpeg requires 10.7 SDK, which is never going to be present on my snow leopard box.

There's no reason why it couldn't be. That is exactly what we did on
our buildbot slave and the package was built successfully:
    http://packages.macports.org/libsdl2/
Is there any reason why you are not getting binary packages? Do you
have a libc++ build setup or do you use a different prefix? (Under
default setup you would have gotten this package automatically.)

Ryan even started working on a slightly more automated way to install
a different SDK, but for some reason this didn't end upstream yet:
    https://github.com/ryandesign/macports-ports/commits/MacOSX.sdk
All you need to do is download the appropriate xcode version from
Apple, extract it and put the 10.7 SDK next to the other SDKs on your
machine.

I believe there's also xcode which ships 10.7 SDK that's compatible
with 10.6, but that one was behind a paywall. (Don't take my word for
it, and I would not suggest to install that one either.)

See also
    https://trac.macports.org/ticket/52210
which is something we might want to push in our repository.

> I don't need the current build of ffmpeg. Last build that worked... was fine. I don't know why I messed with it, but if I can get a working build, I'll just freeze my system and stop upgrading the ports.

Ken and others are doing a marvellous job keeping the latest versions
of ports working.

Also, if you need to go back to an older state, you could just do a
git checkout of macports-ports and go back to a date where you think
the system was still working. And you could easily install all the old
packages from there. (MacPorts is not too happy to install older
versions of ports automatically, but you could always start from
scratch.)

> I don't want to waste anyone's time with my problems. I thought there might be someone still running snow leopard and ffmpeg subscribed to the list.

Ken is running Tiger PPC :)
And he successfully built libsdl2.

> If not, I would be grateful for some direction or perhaps a better understanding of just how deep my troubles run.

What you describe should be perfectly solvable.

One "sin" that the MacPorts project is doing is that we didn't yet
switch to a newer libc++ by default. Many ports would nowadays be
broken due to lack of support for C++11 on older systems. You can
remedy that with
    https://trac.macports.org/wiki/LibcxxOnOlderSystems
but since it's not the default configuration, you cannot fetch binary packages.

With libc++ setup you can build a huge number of ports that you would
never get working on a stock 10.6 :)

> And probably direct contact is ok to keep this bs off the listserv.

Feel free to use the mailing list. If this gets too off-topic for the
users list :), you can always switch to the developer list. But you
are not the only one running into such problems. In my opinion it
helps to keep discussions public, both because we get feedback that
users want support for specific configurations (and some patches might
be pushed that would otherwise end up sitting forgotten in the bug
tracker forever :), and because other users with the same problem
might find the answer to the same question.

Nowadays we may have less publicity than the competing package
manager, but I'm pretty sure that MacPorts is by far the best as far
as support for older systems goes. (HB completely dropped support for
10.8 and lower.)


To start with, make sure that you have the latest version of port
definitions. If I was you, I would clone macports-ports from git, and
potentially also clone
    https://github.com/kencu/SnowLeopardPorts
and add both to
    /opt/local/etc/macports/sources.conf

Then try to install the 10.7 SDK. You can either try to install using
Ryan's port (I didn't try that yet, but all you need is either put the
Portfile to your tree
    https://github.com/ryandesign/macports-ports/blob/0e2c77b396a1073dd41211da34e0ff03608bbd29/devel/MacOSX.sdk/Portfile
(or fetch from Ryan's branch to your git clone). You probably need to
download one of these files from Apple:

# installxcode_41_lion.dmg 4.1 10.7-11A511a
# installxcode_42_lion.dmg 4.2 10.7.2-11C63
# installxcode_421_lion.dmg 4.2.1 10.7.2-11C63
# xcode_43_lion.dmg 4.3 10.7.3-11D50a
# xcode_431_lion.dmg 4.3.1 10.7.3-11D50a
# xcode_432_lion.dmg 4.3.2 10.7.3-11D50a
# xcode_4.3.3_for_lion.dmg 4.3.3 10.7.4-11E52

and either let the port do its magic or extract and copy the contents
manually (I would need to look it up how to do it; I've done it
before, but never know by heart).

Mojca


More information about the macports-users mailing list