This could help you: http://www.faqs.org/docs/Linux-HOWTO/Program-Library-HOWTO.html
On Mon, Jun 22, 2009 at 3:10 PM, Tyler Laing <[email protected]> wrote: > Well, the linker tries to link to the first library of the right name, with > all the needed symbols. Because of the .1d, that library comes before the > .52. At least thats what I think happens. You could try renaming the wrong > libraries to some backup name, like libavcodec.backup.so.1d, which will keep > the linker from using it, I hope. Then recompile your app, and see what > happens.Oh, and the libavformat.so is a symlink to the latest version of > libavformat, which in this case is libavformat.so.52 > > > On Mon, Jun 22, 2009 at 3:07 PM, Cuneyt Taskiran <[email protected]>wrote: > >> Thanks for your reply. I did as you suggested and got >> cun...@elif:~/workspace/ffmpeg_try/Debug$ ldd ./ffmpeg_try >> linux-gate.so.1 => (0xb7f6d000) >> libavcodec.so.1d => /usr/lib/libavcodec.so.1d (0xb7aff000) >> libavformat.so.1d => /usr/lib/libavformat.so.1d (0xb7a79000) >> etc. >> >> When I do the same on ffmpeg I see that libav libraries linked are >> different >> versions, e.g. libavformat.so.52. Aha! >> >> My first question is: How can I specify the correct version >> libavformat.so.52 rather than libavformat.so.1d to the loader? >> >> And the other one is: Why does this happen? I looked into my libavformat >> directory and see both libavformat.so and libavformat.so.52. Why does gcc >> loader pick one while the other one is included in the ffmpeg build? >> >> Thanks a lot! >> >> C >> >> >> On Mon, Jun 22, 2009 at 4:54 PM, Tyler Laing <[email protected]> wrote: >> >> > Try using ldd on the executable produced, then make sure that the >> libraries >> > listed are the ones you want loaded. >> > >> > -Tyler >> > >> > On Mon, Jun 22, 2009 at 2:51 PM, Cuneyt Taskiran <[email protected] >> > >wrote: >> > >> > > I have an issue with opening a stream, that I tracked down to >> > > open_input_file(). I have added a printf statement to the >> > open_input_file() >> > > function in utils.c and recompiled & reinstalled ffmpeg. Now, when I >> run >> > > command line ffmpeg, I see the message as expected. However, when I >> run >> > my >> > > simple program that just calls open_input_file(), the message is not >> > > displayed! >> > > >> > > How can command line ffmpeg and my program be using two different sets >> of >> > > libraries? >> > > >> > > I compile my code using Eclipse with >> > > gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"main.d" >> -MT"main.d" >> > > -o"main.o" "../main.c" >> > > >> > > Thanks fo rthe help, >> > > >> > > Cuneyt >> > > _______________________________________________ >> > > libav-user mailing list >> > > [email protected] >> > > https://lists.mplayerhq.hu/mailman/listinfo/libav-user >> > > >> > >> > >> > >> > -- >> > Visit my blog at http://oddco.ca/zeroth/zblog >> > _______________________________________________ >> > libav-user mailing list >> > [email protected] >> > https://lists.mplayerhq.hu/mailman/listinfo/libav-user >> > >> _______________________________________________ >> libav-user mailing list >> [email protected] >> https://lists.mplayerhq.hu/mailman/listinfo/libav-user >> > > > > -- > Visit my blog at http://oddco.ca/zeroth/zblog > -- Visit my blog at http://oddco.ca/zeroth/zblog _______________________________________________ libav-user mailing list [email protected] https://lists.mplayerhq.hu/mailman/listinfo/libav-user
