[icecast] Icecast 2 questions.

Geoff Shang gshang at uq.net.au
Fri Nov 16 15:34:50 PST 2001

On Fri, 16 Nov 2001, Tom Murphy wrote:

>   I just built icecast 2 from cvs. I tried to compile ices (also from
> cvs) and got:
> stream.c: In function `ices_instance_stream':
> stream.c:164: warning: passing arg 1 of `shout_strerror' makes pointer
> from integer without a cast
> stream.c:164: too few arguments to function `shout_strerror'
> stream.c:198: warning: passing arg 1 of `shout_strerror' makes pointer
> from integer without a cast
> stream.c:198: too few arguments to function `shout_strerror'
> stream.c:221: warning: passing arg 1 of `shout_strerror' makes pointer
> from integer without a cast
> stream.c:221: too few arguments to function `shout_strerror'
> make[2]: *** [stream.o] Error 1

ah.  You have the problem I hit and never managed to solve to my
satisfaction.  configure is finding the wrong version of libshout, or in
this case, shout.h.  If you need the old MP3 version of libshout around
then you're going to have fun getting ices2 to compile.  My experience is
that, even using --with-shout-prefix it's impossible to get the right
version of libshout to link if the wrong one is in a regular install path.
Why configure doesn't bomb is beyond me.

If you only want to do ogg streaming, save yourself considerable headache
and blow away the old libshout and get libshout2 from the xiph CVS if you
haven't already.  If you must have both on the system, the only way I've
managed to get ices2 to compile is to link libshout statically.  To do
this, I compiled and installed libshout2 using ./configure
--prefix=/usr/friends/geoff which put files in the include and lib subdirs.
Then I did the following in the ices2 top-level dir:

# Tell LD where libshout2 is so configure doesn't complain
./autogen.sh --with-shout-prefix=/usr/friends/geoff

Note here that autogen will pass the --with option to configure.  Now,
configure at this point (for me at least) will do its job without
complaint.  Yes, the shout test program compiles and runs.  So make should
work now?  urrr well yeah it should.  But it doesn't.  Not for me anyway.
It still manages somehow to link against the wrong libshout (I think, it's
been a little while since I did all this, like a few weeks).  So here's
what I had to do:  cd to src and edit Makefile.  You should see something
like this on something like line 114:

LIBS =  -lpthread  -lxml2 -L/lib -logg -L/lib -lvorbis -lm
-lvorbisenc -L/usr/friends/geoff/lib -lshout

the problem is that it must be finding libshout before ever getting to look
in the right place for it.  So I edited that to look like this:

LIBS =  -lpthread  -lxml2 -L/lib -logg -L/lib -lvorbis -lm
-lvorbisenc /usr/friends/geoff/lib/libshout.a

I would really prefer to do it dynamically, but I'm sharing this system
with ices 0.2.2 and it needs the old libshout.  It's not my box so I have
to make it work around the way things are.

 > Anyway I
tested out icecast2 and it seems to be pretty happy, but
the > stream is in mp3 format. I was interested in streaming in OGG format.
> Is there a way to do this?

hmmmm.. Didn't know that icecast2 would relay an MP3 stream. <thinks>

Yeah, use ices2 which is in the xiph.org CVS ... oh wait, you've found that
already.  Ices 0.2.2 is for streaming MP3 to icecast 1.x servers.


--- >8 ----
List archives:  http://www.xiph.org/archives/
icecast project homepage: http://www.icecast.org/
To unsubscribe from this list, send a message to 'icecast-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.

More information about the Icecast mailing list