[Libav-user] undefined reference to av_frame_alloc/free

Jason Blum jason.j.blum at gmail.com
Thu May 29 04:46:17 CEST 2014

> These functions were added in a recent release, so maybe your
> installation is fucked up, and headers and library mismatch.

I downloaded and built from source the ffmpeg 2.2.2 version. Removed the
header files and shared library files before installing. The ffmpeg command
now says version 2.2.2, so I think I did that right. I get the same errors.

Everything I see about this undefined reference to symbol has to do with
linking order, i.e. your g++ command line would have the .o you are linking
libraries to BEFORE the -lavcodec etc. linking flags.

I shouldn't need to link avutil explicitly to use av_malloc( ), right? Or
has that been changed in more recent ffmpeg versions?

Unfortunately I have no idea what is controlling the linking order in a ROS
catkin build. I will ask about that in the ROS help mailing lists.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://ffmpeg.org/pipermail/libav-user/attachments/20140528/5e11806d/attachment.html>

More information about the Libav-user mailing list