Thanks Rene,

Now I have this issue:

ty...@surak:~/pygame_movie$ python -c "import pygame.gmovie"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: /usr/lib/libavcodec.so.51: undefined symbol: av_random_init
ty...@surak:~/pygame_movie$ grep "av_random_init" /usr/lib/libavcodec.so.51
Binary file /usr/lib/libavcodec.so.51 matches

Is there any way to force the gmovie.so to link to a specific library file?

-Tyler

On Thu, May 21, 2009 at 3:05 PM, René Dudfield <ren...@gmail.com> wrote:

> hello,
>
> you can grep the shared modules to find where that function is...
>
> It apppears to be in libavcodec.so
>
>
> You can see what your gmovie.so has linked to it on linux with:
> $ ldd gmovie.so
>
> Or on OSX with:
> $ otool -L gmovie.so
>
>
> cheers,
>
>
>
>
> On Fri, May 22, 2009 at 8:00 AM, Tyler Laing <trinio...@gmail.com> wrote:
>
>> Sorry to bother you all again,
>>
>> Now when I type import pygame.gmovie, it gives this error:
>> ImportError: /usr/lib/python2.5/site-packages/pygame/gmovie.so: undefined
>> symbol: av_audio_convert_free
>>
>> So I included both the audioconvert.h and audioconvert.c files into the
>> pygame source directory. But I can't figure out how to link these files into
>> the gmovie.so executable. I don't have a lot of experience linking files
>> together, and all of your help has been much appreciated!
>>
>> -Tyler
>>
>>
>> On Thu, May 21, 2009 at 2:33 PM, Tyler Laing <trinio...@gmail.com> wrote:
>>
>>> Lenard,
>>>
>>> Thank you very much! That worked.
>>>
>>> -Tyler
>>>
>>>
>>> On Thu, May 21, 2009 at 1:26 PM, Lenard Lindstrom <le...@telus.net>wrote:
>>>
>>>> When building ffmpeg you have to pass --enable-shared to ./configure. Do
>>>> a ./configure --help to see all the options.
>>>>
>>>> Lenard
>>>>
>>>>
>>>> Tyler Laing wrote:
>>>>
>>>>> Hello all,
>>>>>
>>>>> Making fast progress here. I've got a question for later, but the more
>>>>> relevant one right now is this:
>>>>>
>>>>> The extension compiles, and it fails when linking with libavformat.
>>>>> The error message is this:
>>>>> gcc -pthread -shared -Wl,-O1,-Bsymbolic-functions
>>>>> build/temp.linux-x86_64-2.5/src/ff_movie.o -lSDL -lavformat -lavdevice
>>>>> -lavcodec -lavutil -lswscale -o 
>>>>> build/lib.linux-x86_64-2.5/pygame/gmovie.so
>>>>> /usr/bin/ld: /usr/local/lib/avformat.a(allformats.o): relocation of
>>>>> R_X86_64_32 against 'aac_demuxer' can not be used when making a shared
>>>>> object; recompile with -fPIC
>>>>> /usr/local/lib/libavformat.a: could not read symbols: Bad value
>>>>> collect2: ld returned with 1 exit status
>>>>> error: command 'gcc' failed with exit status 1
>>>>>
>>>>>
>>>>> In addition, to be able to get to the compilation stage one needs to do
>>>>> this:
>>>>> -download ffmpeg-0.5.0
>>>>> -run ./configure in ffmpeg-0.5.0 directory
>>>>> -run make
>>>>> -run make install (will need admin privileges?)
>>>>> -cd libswscale
>>>>> -run make
>>>>> -run make install (will need admin privileges?)
>>>>>
>>>>> This will put all the correct versions of the header files in
>>>>> /usr/local/include (depending on the distribution)
>>>>>
>>>>> -Tyler
>>>>>
>>>>> --
>>>>> Visit my blog at http://oddco.ca/zeroth/zblog
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Visit my blog at http://oddco.ca/zeroth/zblog
>>>
>>
>>
>>
>> --
>> Visit my blog at http://oddco.ca/zeroth/zblog
>>
>
>


-- 
Visit my blog at http://oddco.ca/zeroth/zblog

Reply via email to