LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   SlackWare 14.0 pulseaudio build problem (a question about it) (http://www.linuxquestions.org/questions/slackware-14/slackware-14-0-pulseaudio-build-problem-a-question-about-it-4175444556/)

marbangens 01-07-2013 04:06 PM

SlackWare 14.0 pulseaudio build problem (a question about it)
 
First error I got from http://slackbuilds.org/repository/14...io/pulseaudio/ was
Code:

/usr/lib/libX11-xcb.so: could not read symbols: File in wrong format
I have 64-bit slackware with multilib so i added
Code:

LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \
Now it build fine and i also upgraded the source from 2.0 to 3.0. Never been this slacky before but my question is.
Have I done this right? Is this a clean way to fix it? I wait to gett more understending how this effect the package befor I install it.

larryhaja 01-07-2013 05:10 PM

Quote:

Originally Posted by marbangens (Post 4864917)
Code:

/usr/lib/libX11-xcb.so: could not read symbols: File in wrong format

This just indicates that it is trying to link to 32 bit library for a 64 bit package. Not what you wanted
Quote:

Originally Posted by marbangens (Post 4864917)
Code:

LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}" \

This is correct method for linking to the correct $ARCH specific library when using autotools or some similar configure script.

For a quick (and maybe dirty) way to tell if the installed librar(y|ies) link to the right $ARCH specific libraries you can run ldd on them.
Eg.
Code:

# ldd /usr/lib64/libm.so 
        linux-vdso.so.1 (0x00007fffab52a000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f9d6d02b000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f9d6d713000)


ponce 01-07-2013 11:04 PM

see also http://slackbuilds.org/faq/#multilib

marbangens 01-08-2013 03:41 AM

Quote:

Originally Posted by larryhaja (Post 4864958)
For a quick (and maybe dirty) way to tell if the installed librar(y|ies) link to the right $ARCH specific libraries you can run ldd on them.
Eg.
Code:

# ldd /usr/lib64/libm.so 
        linux-vdso.so.1 (0x00007fffab52a000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f9d6d02b000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f9d6d713000)


this was what I looked for, a way to make sure the libs link right and they did.
Is there a not to tecknical websait/link to what unix libs are? right now I think
of them as program parts or objects like in c++ but they link alltogheter to save space.

marbangens 01-08-2013 03:47 AM

Quote:

Originally Posted by ponce (Post 4865129)

Now I don't need to worry. Thank you


All times are GMT -5. The time now is 05:05 AM.