Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libavutil and ffmpeg library packages dnf installation conflict under Fedora 40 #136

Open
aarek-eng opened this issue Jul 12, 2024 · 2 comments

Comments

@aarek-eng
Copy link

Tried to follow your instructions as written, but conflicts arose according to dnf:

Error: Transaction test error:
  file /usr/share/man/man3/libavutil.3.gz conflicts between attempted installs of ffmpeg-libs-3.3.6-3.4.x86_64 and libavutil-free-devel-6.1.1-14.fc40.x86_64
  file /usr/share/man/man3/libswscale.3.gz conflicts between attempted installs of libswscale-free-devel-6.1.1-14.fc40.x86_64 and ffmpeg-libs-3.3.6-3.4.x86_64
Error: Transaction test error:
  file /usr/share/man/man3/libavcodec.3.gz conflicts between attempted installs of ffmpeg-libs-3.3.6-3.4.x86_64 and libavcodec-free-devel-6.1.1-14.fc40.x86_64
  file /usr/share/man/man3/libavfilter.3.gz conflicts between attempted installs of ffmpeg-libs-3.3.6-3.4.x86_64 and libavfilter-free-devel-6.1.1-14.fc40.x86_64
  file /usr/share/man/man3/libavformat.3.gz conflicts between attempted installs of ffmpeg-libs-3.3.6-3.4.x86_64 and libavformat-free-devel-6.1.1-14.fc40.x86_64
  file /usr/share/man/man3/libavutil.3.gz conflicts between attempted installs of ffmpeg-libs-3.3.6-3.4.x86_64 and libavutil-free-devel-6.1.1-14.fc40.x86_64
  file /usr/share/man/man3/libswresample.3.gz conflicts between attempted installs of ffmpeg-libs-3.3.6-3.4.x86_64 and libswresample-free-devel-6.1.1-14.fc40.x86_64
  file /usr/share/man/man3/libswscale.3.gz conflicts between attempted installs of ffmpeg-libs-3.3.6-3.4.x86_64 and libswscale-free-devel-6.1.1-14.fc40.x86_64
  file /usr/share/man/man3/libavdevice.3.gz conflicts between attempted installs of libavdevice-free-devel-6.1.1-14.fc40.x86_64 and libavdevice-3.3.6-3.4.x86_64

Then when I moved on to trying to apply cmake ../ I found that the -devel versions weren't recognized by CMake, or, at least, weren't enough: I needed to get the "baseline" packages:

CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - libsixel

Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPkgConfig.cmake:841 (_pkg_check_modules_internal)
  CMakeLists.txt:45 (pkg_check_modules)
CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - libturbojpeg

Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPkgConfig.cmake:841 (_pkg_check_modules_internal)
  CMakeLists.txt:49 (pkg_check_modules)
CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - libexif

Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPkgConfig.cmake:841 (_pkg_check_modules_internal)
  CMakeLists.txt:50 (pkg_check_modules)

And finally

CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - libavutil

Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPkgConfig.cmake:841 (_pkg_check_modules_internal)
  CMakeLists.txt:51 (pkg_check_modules)

Up until libavutil I managed to sort it out by searching dnf for the libraries and installing all variants. I ended up asking dnf to install

libsixel.x86_64 libsixel-devel.x86_64 libsixel-utils.x86_64
turbojpeg.x86_64 turbojpeg-devel.x86_64 
libexif.x86_64 libexif-devel.x86_64

Resulting in the installations of

======================================================================================================================================
 Package                             Architecture                Version                            Repository                   Size
======================================================================================================================================
Installing:
 libsixel                            x86_64                      1.10.3-5.fc40                      fedora                      121 k
 libsixel-devel                      x86_64                      1.10.3-5.fc40                      fedora                       18 k
 libsixel-utils                      x86_64                      1.10.3-5.fc40                      fedora                       28 k
 turbojpeg                            x86_64                      3.0.2-1.fc40                      fedora                      274 k
 turbojpeg-devel                      x86_64                      3.0.2-1.fc40                      fedora                       29 k
 libexif-devel                      x86_64                      0.6.24-7.fc40                       fedora                       21 k

(Yes, somehow libexif-devel got installed but not libexif - but if it was already there, why did I get an error from CMake complaining that it couldn't find it?

So far so good, though, but then I reached an impasse:

With libavutil, which was the origin of most of the conflicts in the original attempt at installing the resources (see above), I found myself hitting a wall:

user@localhost:~/GIT/timg/build$ sudo dnf search libavutil
Last metadata expiration check: 0:02:45 ago on fre 12 jul 2024 23:28:10.
====================================================== Name Matched: libavutil =======================================================
libavutil-free.i686 : FFmpeg's utility library
libavutil-free.x86_64 : FFmpeg's utility library
libavutil-free-devel.i686 : Development files for FFmpeg's utility library
libavutil-free-devel.x86_64 : Development files for FFmpeg's utility library
user@localhost:~/GIT/timg/build$ sudo dnf install libavutil-free.x86_64 libavutil-free-devel.x86_64
Last metadata expiration check: 0:03:11 ago on fre 12 jul 2024 23:28:10.
Dependencies resolved.
======================================================================================================================================
 Package                                Architecture             Version                            Repository                   Size
======================================================================================================================================
Installing:
 libavutil-free                         x86_64                   6.1.1-14.fc40                      updates                     350 k
 libavutil-free-devel                   x86_64                   6.1.1-14.fc40                      updates                     162 k
Installing dependencies:
 libavcodec-free                        x86_64                   6.1.1-14.fc40                      updates                     4.1 M
 libavdevice-free                       x86_64                   6.1.1-14.fc40                      updates                      88 k
 libavfilter-free                       x86_64                   6.1.1-14.fc40                      updates                     1.5 M
 libavformat-free                       x86_64                   6.1.1-14.fc40                      updates                     1.1 M
 libpostproc-free                       x86_64                   6.1.1-14.fc40                      updates                      50 k
 librabbitmq                            x86_64                   0.14.0-2.fc40                      updates                      43 k
 libswresample-free                     x86_64                   6.1.1-14.fc40                      updates                      69 k
 libswscale-free                        x86_64                   6.1.1-14.fc40                      updates                     191 k
 libvpx8                                x86_64                   1.13.1-1.fc40                      fedora                      1.1 M
 openjpeg-libs                          x86_64                   1.5.1-38.fc40                      fedora                       89 k
Downgrading:
 ffmpeg                                 x86_64                   3.3.6-3.4                          rpmsphere                   1.2 M
 ffmpeg-libs                            x86_64                   3.3.6-3.4                          rpmsphere                   5.6 M
 libavdevice                            x86_64                   3.3.6-3.4                          rpmsphere                    67 k

Transaction Summary
======================================================================================================================================
Install    12 Packages
Downgrade   3 Packages

Total download size: 16 M
Is this ok [y/N]: y
Downloading Packages:
(1/15): libavdevice-3.3.6-3.4.x86_64.rpm                                                              131 kB/s |  67 kB     00:00    
(2/15): libvpx8-1.13.1-1.fc40.x86_64.rpm                                                              4.3 MB/s | 1.1 MB     00:00    
(3/15): openjpeg-libs-1.5.1-38.fc40.x86_64.rpm                                                        5.1 MB/s |  89 kB     00:00    
(4/15): ffmpeg-3.3.6-3.4.x86_64.rpm                                                                   1.3 MB/s | 1.2 MB     00:00    
(5/15): libavdevice-free-6.1.1-14.fc40.x86_64.rpm                                                     708 kB/s |  88 kB     00:00    
(6/15): ffmpeg-libs-3.3.6-3.4.x86_64.rpm                                                              3.5 MB/s | 5.6 MB     00:01    
(7/15): libavfilter-free-6.1.1-14.fc40.x86_64.rpm                                                     2.6 MB/s | 1.5 MB     00:00    
(8/15): libavutil-free-6.1.1-14.fc40.x86_64.rpm                                                       5.6 MB/s | 350 kB     00:00    
(9/15): libavutil-free-devel-6.1.1-14.fc40.x86_64.rpm                                                 3.7 MB/s | 162 kB     00:00    
(10/15): libpostproc-free-6.1.1-14.fc40.x86_64.rpm                                                    1.3 MB/s |  50 kB     00:00    
(11/15): librabbitmq-0.14.0-2.fc40.x86_64.rpm                                                         991 kB/s |  43 kB     00:00    
(12/15): libavformat-free-6.1.1-14.fc40.x86_64.rpm                                                    3.7 MB/s | 1.1 MB     00:00    
(13/15): libswresample-free-6.1.1-14.fc40.x86_64.rpm                                                  1.1 MB/s |  69 kB     00:00    
(14/15): libswscale-free-6.1.1-14.fc40.x86_64.rpm                                                     4.8 MB/s | 191 kB     00:00    
(15/15): libavcodec-free-6.1.1-14.fc40.x86_64.rpm                                                     2.9 MB/s | 4.1 MB     00:01    
--------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                 5.4 MB/s |  16 MB     00:02     
Running transaction check
Transaction check succeeded.
Running transaction test
The downloaded packages were saved in cache until the next successful transaction.
You can remove cached packages by executing 'dnf clean packages'.
Error: Transaction test error:
  file /usr/share/man/man3/libavutil.3.gz conflicts between attempted installs of libavutil-free-devel-6.1.1-14.fc40.x86_64 and ffmpeg-libs-3.3.6-3.4.x86_64

libavutil-free-devel and the preexisting ffmpeg-libs are in conflict.

I tried to use CMake with the flags for the video decoding off so that it wouldn't try to use these dependencies, but I falied:

user@localhost:~/GIT/timg/build$ cmake ../ -DWITH_OPENSLIDE_SUPPORT=On -DWITH_VIDEO_DECODING=OFF -DWITH_VIDEO_DEVICE=OFF
-- Checking for module 'libavutil'
--   Package 'libavutil', required by 'virtual:world', not found
CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:619 (message):
  The following required packages were not found:

   - libavutil

Call Stack (most recent call first):
  /usr/share/cmake/Modules/FindPkgConfig.cmake:841 (_pkg_check_modules_internal)
  CMakeLists.txt:51 (pkg_check_modules)

Any recommendations on how to proceed?

@aarek-eng aarek-eng changed the title Fedora issues concerning libavutil on Fedora 40 libavutil and ffmpeg library packages dnf installation conflict under Fedora 40 Jul 12, 2024
@hzeller
Copy link
Owner

hzeller commented Jul 12, 2024

I don't have any recent Fedora experience, so I can't really help much.
Maybe you find someone who maintains the fedora timg package that can provide insight ?
https://packages.fedoraproject.org/pkgs/timg/

@ErrorNoInternet
Copy link
Contributor

ErrorNoInternet commented Jul 18, 2024

Try installing ffmpeg-devel instead of libavutil-free-devel.

Media codecs in Fedora are a bit messy, since the Fedora repositories have a few limitations because of legal issues. This gets more annoying once you add RPMFusion and install ffmpeg.

I've just submitted timg for F40, so it should be available for F40 in ~7 days if nothing goes wrong; you won't have to compile it manually anymore.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants