Results 1 to 10 of 12

Thread: Compiling 32 bit mplayer on a 64 bit system?

Hybrid View

  1. #1
    Join Date
    Feb 2007
    Beans
    Hidden!

    Re: Compiling 32 bit mplayer on a 64 bit system?

    I've compiled 32 bit mplayer successfully on x86_64 after some experimentation. Everything works well, and you can use the win32 codecs to play virtually any media file.

    Install the required libraries prior to attempting the compile:
    1. ia32-libs
    2. libc6-dev-i386
    3. g++-multilib

    There may be a library I'm forgetting here, but configure will complain about it if there is something missing. If it complains about something and you can't figure it out, let me know and I'll try and decipher the error message for you.

    Next, we need to go to the /usr/lib32 directory and make symlinks. For some reason, once the 32bit libs are installed, the correct symlinks are not made.

    Code:
    cd /usr/lib32
    ln -s libX11.so.6 libX11.so
    ln libXv.so.1 libXv.so
    After that we can attempt the compile:

    Code:
    CC="gcc -m32" \
    ./configure --disable-runtime-cpudetection \
    --target=i686-linux \
    --libdir=/usr/lib32 \
    --prefix=/usr/local \
    --win32codecsdir=/usr/lib/win32 \
    --enable-x11 \
    --enable-xv
    If all goes well, execute:

    Code:
    make
    sudo make install
    mv /usr/local/bin/mplayer /usr/local/bin/mplayer32
    mv /usr/local/bin/mencoder /usr/local/bin/mencoder32
    That should do it. You'll have to experiment with the video output configs for mplayer if you want something other than xv or X11 output. If, say, you want SDL output, you'll have to go into your /usr/lib32 dir and make the appropriate symlinks. But you get the idea...

    I hope that helps.

    hoarycripple
    Last edited by hoarycripple; May 6th, 2008 at 03:54 PM. Reason: specify that mplayer is 32 bit

  2. #2
    Join Date
    Feb 2006
    Location
    Norway
    Beans
    304
    Distro
    Kubuntu Development Release

    Re: Compiling 32 bit mplayer on a 64 bit system?

    Thank you I will try this



    Worked like a charm.
    Last edited by eyelessfade; May 7th, 2008 at 08:19 AM. Reason: compiled

  3. #3
    Join Date
    Sep 2008
    Beans
    1

    Re: Compiling 32 bit mplayer on a 64 bit system?

    Hi,

    Sorry to resurrect such an old thread, but I am having trouble compiling MPlayer using this method. The problem is that it detects none of my encoder libraries or related items: here's what I found in configure.log

    Here's what it says:
    Code:
    ============ Checking for Xvid ============
    
    #include <xvid.h>
    int main(void) { xvid_global(0, 0, 0, 0); return 0; }
    
    gcc -m32 -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 -march=i686 -mtune=i686 -pipe -ffast-math -fomit-frame-pointer         -o /tmp/mplayer-conf--3282 /tmp/mplayer-conf--3282.c -lxvidcore -lm
    /usr/bin/ld: skipping incompatible /usr/local/lib/libxvidcore.a when searching for -lxvidcore
    /usr/bin/ld: cannot find -lxvidcore
    collect2: ld returned 1 exit status
    It does not appear to look for the 32-bit version of xvid. Now, for Xvid, there's only one library and set of includes in /usr/local/lib, so I'm not sure if I can get that to work. However, I remember a few days back that it worked when I tried to compile it with everything. However, a reinstall's been done, and now it doesn't.

    but for Freetype:

    Code:
    gcc -m32 -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 -march=i686 -mtune=i686 -pipe -ffast-math -fomit-frame-pointer         -o /tmp/mplayer-conf--3282 /tmp/mplayer-conf--3282.c -I/usr/include/freetype2 -lfreetype -lz
    /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../libfreetype.so when searching for -lfreetype
    /usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.2.3/../../../libfreetype.a when searching for -lfreetype
    /usr/bin/ld: skipping incompatible /usr/bin/../lib/libfreetype.so when searching for -lfreetype
    /usr/bin/ld: skipping incompatible /usr/bin/../lib/libfreetype.a when searching for -lfreetype
    /usr/bin/ld: skipping incompatible /usr/lib/libfreetype.so when searching for -lfreetype
    /usr/bin/ld: skipping incompatible /usr/lib/libfreetype.a when searching for -lfreetype
    /usr/bin/ld: cannot find -lfreetype
    collect2: ld returned 1 exit status
    How can I make it so that it looks in the right places? Freetype occurs in /usr/lib32, but it's not looking there. Do I need to get 32-bit libraries by getting new packages or anything? Do I need to use a different set of options?

    Thanks

  4. #4
    Join Date
    Aug 2007
    Location
    Los Angeles, CA
    Beans
    128
    Distro
    Ubuntu 14.04 Trusty Tahr

    Re: Compiling 32 bit mplayer on a 64 bit system?

    It probably is looking in /usr/lib. Take a look at the error message. It needs freetype.so but if you look in /usr/lib32 you'll probably only find something like freetype.so.6. Just make a symbolic link to the library. I wrote a bash script that automatically does this for every library in /usr/lib32.

  5. #5
    Join Date
    Mar 2009
    Location
    London
    Beans
    9
    Distro
    Ubuntu 10.04 Lucid Lynx

    Re: Compiling 32 bit mplayer on a 64 bit system?

    I got the message "bash: ./configure: No such file or directory" on trying to compile.

    I just want audio on my wmv files, can they not pu some sort of warning on the 64-bit version that tells you not to bother installing it if you want your computer to actually work, I regret the day #i ever went near 64 bit architecture. I have spent so much time trying to get things to work that don't have 64-bit support.

  6. #6
    Join Date
    Sep 2007
    Location
    Cambridge, MA
    Beans
    635

    Re: Compiling 32 bit mplayer on a 64 bit system?

    Quote Originally Posted by marysiak View Post
    I got the message "bash: ./configure: No such file or directory" on trying to compile.

    I just want audio on my wmv files, can they not pu some sort of warning on the 64-bit version that tells you not to bother installing it if you want your computer to actually work, I regret the day #i ever went near 64 bit architecture. I have spent so much time trying to get things to work that don't have 64-bit support.
    That particular error message doesn't lead me assume it is an overly obscure 64 bit related problem...

  7. #7
    Join Date
    Jun 2007
    Beans
    16,493

    Re: Compiling 32 bit mplayer on a 64 bit system?

    There is a mplayer patch now for the 64 bit version that allows playback of wmv3 and wma3 (wma pro audio
    wma lossless is still not playable

    post about
    http://ubuntuforums.org/showthread.p...84#post7036084

  8. #8
    Join Date
    Dec 2008
    Beans
    2

    Re: Compiling 32 bit mplayer on a 64 bit system?

    For someone who meet the same problem as me.

    I used hoarycripple's method and got errors like this when compile:

    libavcodec/libavcodec.a(lcl.o)(.text+0xe5): In function `decode_frame':
    : undefined reference to `inflateReset'

    It turns out the problem is the zlib. I successfully compiled after adding "-lz" after "$(EXTRA_LIB) " in the Makefile and force installing "zlib1g-dev_1.2.3-6ubuntu4_i386.deb"


    Quote Originally Posted by hoarycripple View Post
    I've compiled 32 bit mplayer successfully on x86_64 after some experimentation. Everything works well, and you can use the win32 codecs to play virtually any media file.

    Install the required libraries prior to attempting the compile:
    1. ia32-libs
    2. libc6-dev-i386
    3. g++-multilib

    There may be a library I'm forgetting here, but configure will complain about it if there is something missing. If it complains about something and you can't figure it out, let me know and I'll try and decipher the error message for you.

    Next, we need to go to the /usr/lib32 directory and make symlinks. For some reason, once the 32bit libs are installed, the correct symlinks are not made.

    Code:
    cd /usr/lib32
    ln -s libX11.so.6 libX11.so
    ln libXv.so.1 libXv.so
    After that we can attempt the compile:

    Code:
    CC="gcc -m32" \
    ./configure --disable-runtime-cpudetection \
    --target=i686-linux \
    --libdir=/usr/lib32 \
    --prefix=/usr/local \
    --win32codecsdir=/usr/lib/win32 \
    --enable-x11 \
    --enable-xv
    If all goes well, execute:

    Code:
    make
    sudo make install
    mv /usr/local/bin/mplayer /usr/local/bin/mplayer32
    mv /usr/local/bin/mencoder /usr/local/bin/mencoder32
    That should do it. You'll have to experiment with the video output configs for mplayer if you want something other than xv or X11 output. If, say, you want SDL output, you'll have to go into your /usr/lib32 dir and make the appropriate symlinks. But you get the idea...

    I hope that helps.

    hoarycripple

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •