How to mass recompile broken packages?
Volodymyr Kostyrko
c.kworr at gmail.com
Thu Jul 29 15:00:28 UTC 2010
29.07.2010 17:31, Unga wrote:
>>> I'm using FreeBSD 8.1 on i386 machine.
>>>
>>> I have upgraded a package using portmanager, but the
>> upgrade seems not successful.
>>>
>>> The required package is upgraded but all packages
>> depend on the upgraded package were not recompiled.
>>>
>>> I have two questions regarding this:
>>> 1. How to list all packages that are broken now?
>>>
>>> 2. How to mass recompile all broken packages?
>>
>> You will need to install libchk from ports. After that:
>>
>> libchk | grep '^Unresolvable' | sed 's|.* in: ||' | xargs
>> -n1 pkg_info
>> -W | sed 's|.*by package ||' | sort -u | grep -v '^[?]$'
>>> rebuild
>>
>> You'll get 'rebuild' file listing all packages with broken
>> binaries. You
>> can use portmaster or portupgrade on it.
>>
>
> Hi
>
> Thank you very much for the reply.
>
> I have 63 packages effected.
>
> How do I sort the "rebuild" file in the dependency order because the first line itself the compilation fails. I used "portupgrade -f pkg".
You don't need that. portupgrade can handle it. Just give it the whole list:
portupgrade -f `cat rebuild`
--
Sphinx of black quartz judge my vow.
More information about the freebsd-questions
mailing list