Ticket #1353 (new defect)

Opened 2 years ago

Last modified 3 weeks ago

./configure with ffmpeg x86_64 - problem, with workaround

Reported by: geep999 Owned by: grass-dev@…
Priority: normal Milestone: 6.4.4
Component: Compiling Version: 6.4.1 RCs
Keywords: ffmpeg Cc:
Platform: Linux CPU: x86-64

Description

I have a bug and workaround for grass 6.4.1 ./configure with ffmpeg on Slackware 13.37 x86_64

./configure \
--with-ffmpeg \
--with-ffmpeg-includes="/usr/include/libpostproc /usr/include/libswscale /usr/include/libavcodec \
/usr/include/libavdevice /usr/include/libavfilter /usr/include/libavformat /usr/include/libavutil" \
--with-ffmpeg-libs="/usr/lib64"

I get error messages like:

checking whether to use FFMPEG... 
yes                                                                                                  
checking for location of FFMPEG includes... /usr/include/libpostproc /usr/include/libswscale /usr/include/libavcodec  
                        /usr/include/libavdevice /usr/include/libavfilter /usr/include/libavformat /usr/include/libavutil                               
checking for avcodec.h... yes                                                                                                          
checking for avformat.h... yes                                                                                                         
checking for swscale.h... yes                                                                                                          
checking for location of FFMPEG library... /usr/lib64                                                                                  
checking for av_free in -lavutil... yes                                                                                                
checking for avcodec_init in -lavcodec... yes                                                                                          
checking for av_set_parameters in -lavformat... no                                                                                     
checking for av_set_parameters in -lavformat... no                                                                                     
configure: error: *** Unable to locate FFMPEG library.

This happens because ./configure is looking for: /usr/lib64/libavcodec.so /usr/lib64/libavformat.so /usr/lib64/libavutil.so

But on my 64bit Slackware 13.37 they are installed in: /usr/lib64/libavcodec64.so /usr/lib64/libavformat64.so /usr/lib64/libavutil64.so

Making soft links cures the problem, but perhaps ./configure could be upgraded.

cd /usr/lib64
ln -s libavformat64.so libavformat.so
ln -s libavcodec64.so libavcodec.so
ln -s libavutil64.so libavutil.so

I am not sure yet if I should also have created soft links for:

libswscale64.so libpostproc64.so libavdevice64.so libavfilter64.so

but they are not needed in order to get ./configure to run.
Keep up the good work.
Cheers,
Peter

Change History

in reply to: ↑ description ; follow-up: ↓ 3   Changed 2 years ago by glynn

Replying to geep999:

This happens because ./configure is looking for: /usr/lib64/libavcodec.so /usr/lib64/libavformat.so /usr/lib64/libavutil.so But on my 64bit Slackware 13.37 they are installed in: /usr/lib64/libavcodec64.so /usr/lib64/libavformat64.so /usr/lib64/libavutil64.so Making soft links cures the problem, but perhaps ./configure could be upgraded.

What does:

pkg-config --libs libavcodec

say?

If it points to the 64-bit libraries, we could try that. OTOH, if the 64-bit version is a separate package (from pkg-config's perspective), that doesn't help.

  Changed 23 months ago by geep999

pkg-config --libs libavcodec
-lavcodec64 

in reply to: ↑ 1   Changed 23 months ago by geep999

Replying to glynn:

Replying to geep999:

This happens because ./configure is looking for: /usr/lib64/libavcodec.so /usr/lib64/libavformat.so /usr/lib64/libavutil.so But on my 64bit Slackware 13.37 they are installed in: /usr/lib64/libavcodec64.so /usr/lib64/libavformat64.so /usr/lib64/libavutil64.so Making soft links cures the problem, but perhaps ./configure could be upgraded.

What does: {{{ pkg-config --libs libavcodec }}} say? If it points to the 64-bit libraries, we could try that. OTOH, if the 64-bit version is a separate package (from pkg-config's perspective), that doesn't help.

pkg-config --libs libavcodec
-lavcodec64

  Changed 6 months ago by martinl

  • keywords ffmpeg added
  • component changed from Default to Compiling
  • milestone set to 6.4.4

Could be related to (1). What version of FFMPEG are you using?

I have updated OGSF lib for new FFMPEG API in r53854. We should probably support also the old FFMPEG's API.

(1)  https://ffmpeg.org/trac/ffmpeg/ticket/1805

  Changed 3 weeks ago by hamish

see also #303 and #1423

Note: See TracTickets for help on using tickets.