Now ON TOPIC, libGL.so, libMesaGL.so on missing list of F8 repo's
Rick Stevens
ricks at nerd.com
Wed Jul 23 17:30:23 UTC 2008
Gene Heskett wrote:
> On Wednesday 23 July 2008, dexter wrote:
>> On Wed July 23 2008 04:06:58 Gene Heskett wrote:
>>> That seems to be faad2 now, but I didn't have the -devel installed.
>>> But that was from faac, and I didn't have that -devel installed either.
>>>
>>> Humm, I have added the /opt/gmerlin/lib directory to a gmerlin.conf file
>>> in /etc/ld.so.conf.d, and I'm running ldconfig after yum installs each of
>>> these -devel packages, but the above faac* errors aren't going away. This
>>> is using the faac stuff from livna.
>> I ended up patching neaacdec.h from the faad2-devel to get rid of theses
>> errors in another project but it should work here also, include this in
>> neaacdec.h:
>>
>> /* MACROS FOR BACKWARDS COMPATIBILITY */
>> /* structs */
>> #define faacDecHandle NeAACDecHandle
>> #define faacDecConfiguration NeAACDecConfiguration
>> #define faacDecConfigurationPtr NeAACDecConfigurationPtr
>> #define faacDecFrameInfo NeAACDecFrameInfo
>> /* functions */
>> #define faacDecGetErrorMessage NeAACDecGetErrorMessage
>> #define faacDecSetConfiguration NeAACDecSetConfiguration
>> #define faacDecGetCurrentConfiguration NeAACDecGetCurrentConfiguration
>> #define faacDecInit NeAACDecInit
>> #define faacDecInit2 NeAACDecInit2
>> #define faacDecInitDRM NeAACDecInitDRM
>> #define faacDecPostSeekReset NeAACDecPostSeekReset
>> #define faacDecOpen NeAACDecOpen
>> #define faacDecClose NeAACDecClose
>> #define faacDecDecode NeAACDecDecode
>> #define AudioSpecificConfig NeAACDecAudioSpecificConfig
>>
>> For some reason Freshrpms (which I use as a base for my stuff) & also I
>> assume livna patch these defines out.
>>
>> ...dex
>
> There appears to be precisely the inverse of that already there, labeled:
>
> #if 1
> /* MACROS FOR FORWARD COMPATIBILITY */
> /* structs */
> #define NeAACDecHandle faacDecHandle
> #define NeAACDecConfiguration faacDecConfiguration
> #define NeAACDecConfigurationPtr faacDecConfigurationPtr
> #define NeAACDecFrameInfo faacDecFrameInfo
> /* functions */
> #define NeAACDecGetErrorMessage faacDecGetErrorMessage
> #define NeAACDecSetConfiguration faacDecSetConfiguration
> #define NeAACDecGetCurrentConfiguration faacDecGetCurrentConfiguration
> #define NeAACDecInit faacDecInit
> #define NeAACDecInit2 faacDecInit2
> #define NeAACDecInitDRM faacDecInitDRM
> #define NeAACDecPostSeekReset faacDecPostSeekReset
> #define NeAACDecOpen faacDecOpen
> #define NeAACDecClose faacDecClose
> #define NeAACDecDecode faacDecDecode
> #define NeAACDecAudioSpecificConfig AudioSpecificConfig
> #endif
>
> As I understand code, that looks like I should ifdef it out, but I'll try for
> effects first before I replace the 1 with a 0, thanks Dex.
>
> And while its slightly different, the end result is the same:
>
> gcc -D_REENTRANT -D_FILE_OFFSET_BITS=64 -I/usr/local/include -Wall -Wmissing-declarations -Wdeclaration-after-statement -Wl,--rpath -Wl,/opt/gmerlin/lib -o .libs/bgavdump
> bgavdump.o ../lib/.libs/libgmerlin_avdec.so -L/usr/local/lib /usr/local/lib/libgavl.so
> /usr/lib/libavcodec.so.51: undefined reference to `faacDecDecode'
> /usr/lib/libavcodec.so.51: undefined reference to `faacDecInit2'
> /usr/lib/libavcodec.so.51: undefined reference to `faacDecClose'
> /usr/lib/libavcodec.so.51: undefined reference to `faacDecOpen'
> /usr/lib/libavcodec.so.51: undefined reference to `faacDecSetConfiguration'
> /usr/lib/libavcodec.so.51: undefined reference to `faacDecInit'
> /usr/lib/libavcodec.so.51: undefined reference to
> `faacDecGetCurrentConfiguration'
> /usr/lib/libavcodec.so.51: undefined reference to `faacDecGetErrorMessage'
> collect2: ld returned 1 exit status
> make[1]: *** [bgavdump] Error 1
> make[1]: Leaving directory
> `/opt/gmerlin-all-in-one-20080715/gmerlin_avdecoder/gmerlin-avdecoder-0.1.8/tests'
> make: *** [all-recursive] Error 1
> Compilation in gmerlin_avdecoder failed
>
> I saw the word failed go by once in the middle of all that, so I'm running the
> buildall.sh to a logfile so grep can find it. But that all takes time, so I'll
> go ahead and submit this for further comments.
Well, that's all in the libfaad.so.0.0.0 file. An excerpt from "nm -D":
[root at prophead ~]# nm -D /usr/lib64/libfaad.so.0.0.0 | grep faac
0000003beb006dd0 T faacDecClose
0000003beb006dc0 T faacDecDecode
0000003beb006500 T faacDecGetCurrentConfiguration
0000003beb0064d0 T faacDecGetErrorMessage
0000003beb0070c0 T faacDecInit
0000003beb006ea0 T faacDecInit2
0000003beb0073f0 T faacDecOpen
0000003beb006520 T faacDecPostSeekReset
0000003beb007040 T faacDecSetConfiguration
[root at prophead ~]# rpm -qa | grep faad2
faad2-2.0-21.20050131.lvn8
[root at prophead ~]# rpm -ql faad2
/usr/bin/faad
/usr/lib64/libfaad.so.0
/usr/lib64/libfaad.so.0.0.0
/usr/share/doc/faad2-2.0
/usr/share/doc/faad2-2.0/AUTHORS
/usr/share/doc/faad2-2.0/COPYING
/usr/share/doc/faad2-2.0/ChangeLog
/usr/share/doc/faad2-2.0/NEWS
/usr/share/doc/faad2-2.0/README
/usr/share/doc/faad2-2.0/TODO
[root at prophead ~]# ls -l /usr/lib64/libfaad.so*
lrwxrwxrwx 1 root root 16 2008-02-25 16:59
/usr/lib64/libfaad.so.0 -> libfaad.so.0.0.0
-rwxr-xr-x 1 root root 289256 2007-10-18 00:00
/usr/lib64/libfaad.so.0.0.0
I don't have the -devel RPM installed. My guess is that it's trying
to link against the 32-bit library which you don't have installed.
You might try:
LDFLAGS="-L/usr/lib64 -lfaad2" make
to have it search the 64-bit stuff first. Just a wild idea.
----------------------------------------------------------------------
- Rick Stevens, Systems Engineer rps2 at nerd.com -
- Hosting Consulting, Inc. -
- -
- If your broker is so damned smart...why is he still working? -
----------------------------------------------------------------------
More information about the users
mailing list