On 11/02/2013 05:29 PM, Daniel Campbell wrote:
> On 11/02/2013 06:07 AM, Alan McKinnon wrote:
>> On 02/11/2013 12:49, Daniel Campbell wrote:
>>> On 10/27/2013 12:08 PM, Alexander Kapshuk wrote:
>>>> As I ran 'emerge --ask --update --deep --with-bdeps=y --newuse world', I
>>>> got the message below.
>>>>
>>>> These are the packages that would be merged, in order:
>>>>
>>>> Calculating dependencies... done!
>>>> [ebuild  N     ] dev-scheme/guile-1.8.8-r1  USE="deprecated nls regex
>>>> threads -debug -debug-freelist -debug-malloc -discouraged -emacs
>>>> -networking"
>>>> [ebuild  N     ] sys-devel/autogen-5.15
>>>> [ebuild     U ~] net-libs/gnutls-3.2.5 [2.12.23-r1] USE="-dane%"
>>>> LINGUAS="-cs% -de% -en% -fi% -fr% -it% -ms% -nl% -pl% -sv% -uk% -vi%
>>>> -zh_CN%"
>>>> [ebuild  N     ] media-libs/libpostproc-0.8.0.20121125  USE="-3dnow
>>>> (-altivec) -mmx -mmxext -pic -static-libs"
>>>> [ebuild     U ~] media-video/vlc-2.1.0 [2.0.9] USE="-chromaprint% -fdk%
>>>> -opencv% (-qt5) -rdp% {-test%} -vdpau%"
>>>> [blocks B      ] <media-video/ffmpeg-1.2:0 ("<media-video/ffmpeg-1.2:0"
>>>> is blocking media-video/vlc-2.1.0)
>>>> [blocks B      ] media-video/ffmpeg:0 ("media-video/ffmpeg:0" is
>>>> blocking media-libs/libpostproc-0.8.0.20121125)
>>>> [blocks B      ] media-libs/libpostproc ("media-libs/libpostproc" is
>>>> blocking media-video/ffmpeg-1.0.7)
>>>>
>>>> !!! Multiple package instances within a single package slot have been 
>>>> pulled
>>>> !!! into the dependency graph, resulting in a slot conflict:
>>>>
>>>> net-libs/gnutls:0
>>>>
>>>>   (net-libs/gnutls-3.2.5::gentoo, ebuild scheduled for merge) pulled in by
>>>>     >=net-libs/gnutls-3.0.20:0 required by
>>>> (media-video/vlc-2.1.0::gentoo, ebuild scheduled for merge)
>>>>
>>>>   (net-libs/gnutls-2.12.23-r1::gentoo, installed) pulled in by
>>>>     (no parents that aren't satisfied by other packages in this slot)
>>>>
>>>>
>>>> It may be possible to solve this problem by using package.mask to
>>>> prevent one of those packages from being selected. However, it is also
>>>> possible that conflicting dependencies exist such that they are
>>>> impossible to satisfy simultaneously.  If such a conflict exists in
>>>> the dependencies of two different packages, then those packages can
>>>> not be installed simultaneously. You may want to try a larger value of
>>>> the --backtrack option, such as --backtrack=30, in order to see if
>>>> that will solve this conflict automatically.
>>>>
>>>> For more information, see MASKED PACKAGES section in the emerge man
>>>> page or refer to the Gentoo Handbook.
>>>>
>>>>
>>>>  * Error: The above package list contains packages which cannot be
>>>>  * installed at the same time on the same system.
>>>>
>>>>   (media-video/vlc-2.1.0::gentoo, ebuild scheduled for merge) pulled in by
>>>>     media-video/vlc required by @selected
>>>>
>>>>   (media-video/ffmpeg-1.0.7::gentoo, installed) pulled in by
>>>>    
>>>>> =media-video/ffmpeg-0.10.3:0[X?,encode?,gsm?,jpeg2k?,mp3?,sdl?,speex?,theora?,threads?,truetype?,vaapi?,vdpau?,x264?]
>>>> (>=media-video/ffmpeg-0.10.3:0[X,encode,mp3,sdl,truetype,x264]) required
>>>> by (virtual/ffmpeg-0.10.3::gentoo, installed)
>>>>
>>>>
>>>> For more information about Blocked Packages, please refer to the following
>>>> section of the Gentoo Linux x86 Handbook (architecture is irrelevant):
>>>>
>>>> http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1#blocked
>>>>
>>>>
>>>> The following keyword changes are necessary to proceed:
>>>>  (see "package.accept_keywords" in the portage(5) man page for more 
>>>> details)
>>>> # required by media-video/vlc-2.1.0[gnutls]
>>>> # required by @selected
>>>> # required by @world (argument)
>>>> =net-libs/gnutls-3.2.5 ~x86
>>>>
>>>> Use --autounmask-write to write changes to config files (honoring
>>>> CONFIG_PROTECT). Carefully examine the list of proposed changes,
>>>> paying special attention to mask or keyword changes that may expose
>>>> experimental or unstable packages.
>>>> ----------------------------------------------
>>>> After reading the 'Blocked Packages' found here,
>>>> http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?full=1#blocked,
>>>> would updating media-video/ffmpeg to version 1.2 [the current version of
>>>> ffmpeg is 1.0.7], fix the blockage?
>>>>
>>>> Any input would be much appreciated.
>>>>
>>>>
>>> It looks like you just need to add `net-libs/gnutls` to
>>> /etc/portage/package.accept_keywords, which will fetch the testing
>>> version of gnutls. Is your version of vlc also from testing? That may be
>>> why emerge is complaining. I also noticed a lot of -USE% flags, which
>>> tells me they were removed. Did you change USE flags at the same time
>>> you attempted this update? There's no problem with that, of course, but
>>> it can complicate upgrades sometimes. :)
>>>
>>> Hope that helps.
>>>
>>
>> The basic problem is a stable system with a bunch of unstable packages
>> installed.
>>
>> The requested vlc version is ~arch, which wants a ~arch version of
>> gnutls. This conflicts with other stable packages that want a stable
>> version of gnutls.
>>
>> Mixing and matching arch and ~arch like this often causes unsolveable
>> problems, especially with basic libs like gnutls used by lots of
>> packages. In this specific case, I doubt very much that the problem is
>> solveable. Either make the entire system ~arch or downgrade vlc to
>> stable. Mixing is not recommended, not that it won't work (it often
>> does), but because users so often run into these problems and devs
>> usually will not help fix it. The user is thus totally on tehir own with
>> this one.
>>
>>
> Ah, I wasn't aware that it wasn't a supported thing. Good points; the
> testing necessary to support mixed systems is more than any dev team
> could handle realistically. I mix and match, but only for a select few
> packages that simply don't have a stable version.
>
> Alex: In order to get ~arch vlc, you had to put vlc in your
> package.accept_keywords file. Try removing that to go back to the stable
> build and see if that corrects things. If not, then I agree with Alan
> and you should probably make the big decision of stable or testing.
>
Thanks very much for your responses to my original query.

What I did do prior to getting your responses was try and resolve the
dependency conflict as shown below.

(1). I added '=net-libs/gnutls-3.2.5 ~x86' and
'=media-video/ffmpeg-1.2.4 ~x86' to package.accept_keywords:
box0=; egrep 'gnutls|ffmpeg' /etc/portage/package.accept_keywords
=net-libs/gnutls-3.2.5 ~x86
=media-video/ffmpeg-1.2.4 ~x86
(2). I then updated 'media-video/ffmpeg' to version
'media-video/ffmpeg-1.2.4', like so:
emerge --ask '>media-video/ffmpeg-1.0.7'
!!! existing preserved libs:
>>> package: media-video/ffmpeg-1.2.4
 *  - /usr/lib/libavutil.so.51
 *  - /usr/lib/libavutil.so.51.73.101
 *      used by /usr/bin/mencoder (media-video/mplayer-1.1.1-r1)
 *      used by /usr/bin/mplayer (media-video/mplayer-1.1.1-r1)
 *      used by /usr/lib/vlc/plugins/codec/libavcodec_plugin.so
(media-video/vlc-2.0.9)
 *      used by /usr/lib/vlc/plugins/demux/libavformat_plugin.so
(media-video/vlc-2.0.9)
Use emerge @preserved-rebuild to rebuild packages using these libraries
(3). I then pulled in the other updates:
emerge --ask --update --deep --with-bdeps=y --newuse world
(4). Rebuilt the preserved libs as recorded in
/var/lib/portage/preserved_libs_registry
emerge --ask @preserved-rebuild

So far, the whole system seems to be running OK.

It did occur to me afterwards, like Alan and Daniel suggested, that
mixing stable and unstable packages was not a good idea.

I put vlc ~x86 in package.keywords as instructed here,
http://www.videolan.org/vlc/download-gentoo.html.
box0=; cat /etc/portage/package.keywords
media-video/vlc ~x86

Turns out, it wasn't such a good idea after all.

What would I have to do to downgrade vlc, gnutls and ffmpeg to the
stable versions of the packages?
I guess I'd have to remove their respective entries from
/etc/portage/package.(accept)_keywords.
box0=; cat /etc/portage/package.keywords
media-video/vlc ~x86
box0=; cat /etc/portage/package.accept_keywords
=net-im/skype-4.2.0.11-r1 ~x86
=sys-devel/gettext-0.18.3.1-r1 ~x86
=net-libs/gnutls-3.2.5 ~x86
=media-video/ffmpeg-1.2.4 ~x86

How would I instruct emerge to do that properly?

Thanks.


Reply via email to