<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>>  Do I need to create a ffmpeg package finding module .cmake file to make the .so full path appear?</div></div></div></div></blockquote><div><br></div>

<div>Yes, it turns out you do need to use a cmake package finding module. The full explanation:</div><div><br></div>Found the answer in some loosely related topics. I can't explain WHY this works, but it does.<br><br>

You need to use a package finding .cmake module for ffmpeg. You can find one here:<br><br><a href="https://code.google.com/r/kyberneticist-webport/source/browse/cmake_modules/FindFFMPEG.cmake">https://code.google.com/r/kyberneticist-webport/source/browse/cmake_modules/FindFFMPEG.cmake</a><br>

<br>After the find_package( ) for catkin, set the CMAKE_MODULE_PATH variable to where you put the FindFFMPEG.cmake file, assuming your project is "ardrone_2":<br><br>set(CMAKE_MODULE_PATH ${ardrone_2_SOURCE_DIR})<br>

<br>Then use find_package on FFMPEG:<br><br>find_package(FFMPEG)<br><br>The FindFFMPEG.cmake file sets the FFMPEG_LIBRARIES variable:<br><br>set(FFMPEG_LIBRARIES<br>  ${FFMPEG_LIBAVCODEC}<br>  ${FFMPEG_LIBAVFORMAT}<br>  ${FFMPEG_LIBAVUTIL}<br>

)<br><br>Setting the CMAKE_MODULE_PATH messes up the whatever directory cmake thinks it's in, so you need to specify absolute paths when you use add_executable( ), assuming your package is "ardrone_2":<br><br>

add_executable(h264_decoder_node ${ardrone_2_SOURCE_DIR}/src/h264_decoder.cpp)<br><br>Then link using that variable:<br><br>target_link_libraries(h264_decoder_node ${catkin_LIBRARIES} ${FFMPEG_LIBRARIES} swscale)</div></div>

</div>