Installing an older version of a port
freebsd-questions at herveybayaustralia.com.au
Sat Dec 3 12:28:01 UTC 2011
On 12/02/11 17:51, Polytropon wrote:
> On Fri, 02 Dec 2011 15:25:48 +1000, Da Rock wrote:
>> On 12/02/11 14:01, Adam Vande More wrote:
>>> On Thu, Dec 1, 2011 at 9:55 PM, Da Rock
>>> <freebsd-questions at herveybayaustralia.com.au
>>> <mailto:freebsd-questions at herveybayaustralia.com.au>> wrote:
>>> I've never actually done this before, so I'm a little shaky on the
>>> ffmpeg-0.7.7,1 doesn't work for my purposes: ffserver/ffmpeg
>>> aren't communicating all that well- I'm still working out the
>>> details, but essentially either or both are borked. I've been
>>> working with the ffmpeg list to sort it out.
>>> FFmpeg-devel doesn't work either (for whatever reason- again
>>> communicating upstream for support, although the maintainer might
>>> put opencv as broken in that port), so I'm left with 0.7.6,1 which
>>> does appear to work at this point.
>>> My question is this: how do I do this exactly? The dependencies
>>> will require updating and could fail as well right? I tried a
>>> pkg_create of the port and installing it where required, but it
>>> requires pciids-20111002 and pciids-20111109 is installed (and
>>> probably required by other ports). How can I install the older
>>> version without breaking things (at least too much- I can fix
>>> things but there is usually always a limit)?
>>> My system is 8.1-RELEASE-p1 FreeBSD 8.1-RELEASE-p1 #1: Sun Mar 13
>>> 08:45:42 EST 2011 /usr/obj/usr/src/sys/MEDIA amd64. I have
>>> portupgrade and updated to the latest ports (apparently that is
>>> the problem- although I've only been fiddling with ffmpeg and it
>>> is not in production with my project task per se).
>> I already have a copy of the port required as a pkg, but how do I handle
>> the dependencies?
> You can also use the "portdowngrade" tool to checkout
> an older version of a port. I had success getting something
> to work again that has been "modernized" (and disimproved
> for that matter). :-)
> For the dependencies:
> In most cases, it works like this: Determine the port's
> dependencies and install the current versions (e. g. of
> other programs it depends on, or libraries). Typically,
> they are "downward compatible", for example if the port
> requires libfoobar-1.4, but 1.5 is the current version
> in ports, install it, and it will still work. In worst
> case you have to manually add a symlink for the shared
> library libfoobar-1.4@ -> libfoobar-1.5 so the program
> can "pick it by version number".
> Of course, this might sound strange if one takes the
> initial ideas of shared libraries and their versioning
> into mind. :-)
Wow! That is really cool. It never occurred to me that there'd be a
portdowngrade tool- it's worked like a charm so far. The dependencies
sorted themselves out nicely at the end of it too.
I'll put that one in my notes... :)
More information about the freebsd-questions