Stephen wrote:
> I'm trying to compile the GStreamer ffmpeg plugin on OpenSolaris 2008.05 
> snv_86 (I don't have net access due to hardware issues, not out of 
> choice :( ) and have already installed all the other plugin modules 
> (base, good, bad and ugly) without any issues, but am getting the following:
>
> Leviathan% ./configure --prefix=/usr
> checking for a BSD-compatible install... /usr/bin/ginstall -c
> checking whether build environment is sane... yes
> ####All goes well for a while####
> config.status: executing libtool commands
> === configuring in gst-libs/ext/ffmpeg 
> (/export/home/stephen/Desktop/gst-ffmpeg-0.10.6/gst-libs/ext/ffmpeg)
> configure: running /bin/sh ./configure '--prefix=/usr'  
> '--disable-vhook' '--disable-ffserver' '--disable-ffplay' 
> '--enable-postproc' '--enable-swscale' '--enable-gpl' '--enable-static' 
> '--enable-shared' '--disable-encoder=flac' '--disable-decoder=cavs' 
> '--disable-protocols' '--disable-devices' '--disable-network' 'no' 
> --cache-file=/dev/null --srcdir=.
> Unknown option "no".
> See ./configure --help for available options.
> Unknown option "--cache-file=/dev/null".
> See ./configure --help for available options.
> Unknown option "--srcdir=.".
> See ./configure --help for available options.
> ./configure[20141]: eval: line 1: 12254: Terminated
> configure: error: ./configure failed for gst-libs/ext/ffmpeg
>
> Can anyone enlighten me as to what's happening?
> _______________________________________________
> desktop-discuss mailing list
> desktop-discuss at opensolaris.org
>
>   

There are a few things you need to do to get gst-ffmpeg compiled on 
OpenSolaris.

I'm not certain this process is "good practice" but it has worked for me.

Firstly "configure" for FFMPEG on Open/Solaris only appears to work if 
you run it using "bash".

I renamed /usr/bin/sh to /usr/bin/sh.solaris and created a symlink to 
/usr/bin/sh -> /usr/bin/bash, ie (as root)

    cd /usr/bin
    mv sh sh.solaris
    ln -s bash sh

You will also need to use

    gsed instead of sed
    gld instead of ld
    ggrep instead of grep

 From the gst-ffmpeg source directory create symlinks to these, ie (as user)

    ln -s /usr/bin/gld ld
    ln -s /usr/bin/gsed sed
    ln -s /usr/bin/ggrep grep

Also make one for ginstall (as user)

    ln -s /usr/bin/ginstall install

Add the ffmpeg-source directory to the start of your PATH (as user)

    export PATH=<gst-ffmpeg-source-dir>:$PATH

Now the tricky part.  You need to use /usr/bin/ld when running configure 
but switch to gld when running gmake.

I did on my system anyway and I think it's related to LAME.

To use gld instead of ld you'll need to rename /usr/bin/ld to something 
like /usr/bin/ld.solaris (gcc will still use ld even if the symlink to 
gld is in the path first).  So before we change ld run (as user)

    ./configure .....

Before running gmake (as root)
  
    cd /usr/bin
    mv ld ld.solaris

Now build (as user)

    gmake

During gmake, you'll get undefined symbols in libnsl (I think).  Switch 
back to ld by renaming /usr/bin/ld.solaris back to /usr/bin/ld and 
continuing the build with gmake.  It should go all the way through, ie. 
(as root)

    cd /usr/bin
    mv ld.solaris ld

Then (as user)

    gmake

This worked for me.  Don't ask me why I needed to do all this, I'm still 
learning too.

Good luck.

BTW, TOTEM segfaults when trying to view x264/h264 content (using the 
gst-ffmpeg plugin).  Don't know why.  Might be the process I use to 
build ;-)

p.s.  Don't forget to rename /usr/bin/sh and /usr/bin/ld back to normal.



Reply via email to