Compiling Liquidsoap
  • Hi,

    I'm wondering if this page on compiling liquidsoap is still accurate for 1.9.1?
    http:// wiki.sourcefabric.org/display/CC/Building+Liquidsoap+from+Me rcurial
    The instructions build liquidsoap fine and I get the sine wave from icecast with the test line at the end but when I try to run Airtime with the latest git pull origin master, pypo keeps restarting.

    Here is /var/log/airtime/pypo-liquidsoap/ls_script.log

    Quote:
    2011/08/25 17:15:57 >>> LOG START
    2011/08/25 17:15:57 [protocols.external:3] Found "/usr/bin/ufetch".
    2011/08/25 17:15:57 [protocols.external:3] Found "/usr/bin/wget".
    2011/08/25 17:15:57 [main:3] Liquidsoap 1.0.0-beta2
    2011/08/25 17:15:57 [main:3] Using: pcre=6.0.1 dtools=0.2.2 duppy=0.4.0 duppy.syntax=0.4.0 cry=0.2.0 mm=0.1.0 xmlplaylist=0.1.2 ogg=0.4.2 vorbis=0.6.0 mad=0.4.2 flac=0.1.0 flac.ogg=0.1.0 lame=0.3.0 alsa=0.2.1 samplerate=0.1.1 taglib=0.1.4 camomile=0.7.1 portaudio=@VERSION ladspa=0.1.2
    2011/08/25 17:15:57 [dynamic.loader:2] Could not load plugins in directory /usr/local/lib/liquidsoap/1.0.0-beta2/plugins.
    2011/08/25 17:15:57 [lang:3] Lastfm/audioscrobbler support was not compiled.
    2011/08/25 17:15:57 [frame:3] Using 44100Hz audio, 25Hz video, 44100Hz master.
    2011/08/25 17:15:57 [frame:3] Frame size must be a multiple of 1764 ticks = 1764 audio samples = 1 video samples.
    2011/08/25 17:15:57 [frame:3] Targetting 'frame.duration': 0.04s = 1764 audio samples = 1764 ticks.
    2011/08/25 17:15:57 [frame:3] Frames last 0.04s = 1764 audio samples = 1 video samples = 1764 ticks.
    2011/08/25 17:15:57 [threads:3] Created thread "generic queue #1".
    2011/08/25 17:15:57 [threads:3] Created thread "non-blocking queue #1".
    2011/08/25 17:15:57 [twrradio(dot)mp3:3] Connecting mount twrradio.mp3 for source@127.0.0.1...
    2011/08/25 17:15:57 [server:3] New client: localhost
    2011/08/25 17:15:57 [server:3] New client: localhost
    2011/08/25 17:15:58 [twrradio(dot)mp3:3] Connection setup was successful.
    2011/08/25 17:15:58 [twrradio(dot)ogg:3] Connecting mount twrradio.ogg for source@127.0.0.1...
    2011/08/25 17:15:58 [twrradio(dot)ogg:3] Connection setup was successful.
    2011/08/25 17:15:58 [threads:3] Created thread "wallclock_main" (1 total).
    2011/08/25 17:15:58 [clock.wallclock_main:3] Streaming loop starts, synchronized with wallclock.
    2011/08/25 17:15:58 [fallback_9739:3] Switch to src_9737.
    2011/08/25 17:15:58 [src_9737:3] Inserting missing metadata.
    2011/08/25 17:30:16 [main:3] Shutdown started!
    2011/08/25 17:30:16 [main:3] Waiting for threads to terminate...
    2011/08/25 17:30:16 [twrradio(dot)ogg:3] Closing connection...
    2011/08/25 17:30:16 [twrradio(dot)mp3:3] Closing connection...
    2011/08/25 17:30:16 [clock.wallclock_main:3] Streaming loop stopped.
    2011/08/25 17:30:16 [threads:3] Thread "wallclock_main" terminated (0 remaining).
    2011/08/25 17:30:16 [main:3] Cleaning downloaded files...
    2011/08/25 17:30:16 >>> LOG END

    My Airtime 1.8.2 production server works fine with the compiled version although that was from a couple months ago and I just compiled this liquidsoap today. Perhaps there is a difference in the source pulled via hg?

    Any ideas?
  • 6 Comments sorted by
  • Vote Up0Vote Down Paul BaranowskiPaul Baranowski
    Posts: 389Member, Administrator, Sourcefabric Team
    Yes, the instructions are still correct, but we cant vouch for the latest
    liquidsoap and how it might interact with Airtime. At the beginning of
    every new development cycle we get the latest version and run our tests
    against it to make sure everything works. It usually gets about two months
    of testing before it is released.

  • Hi!

    The instructions are still correct, but recently the Liquidsoap team has made major strides towards a 1.0 release. We have begun using their beta tarballs instead which should be much more stable then the repository.

    Go here and download 1.0.0-beta3 (Which we are testing right now - so far so good)

    Once you have all the files extracted, you can follow our guide to compiling the binary for your system.

    Just out of curiousity, are you still having problems with the binaries that we have shipped, forcing you to compile your own?
    Airtime Pro Hosting: http://airtime.pro
  • Thanks Martin. I see I am using 1.0.0-beta2. That was after the hg update command which would have been from the repository.

    I'll give your link a shot.

    As for the binaries, I only wanted to compile my own to include AAC+.

  • OK I get this error when running 'make':
    Quote:
    OCAMLOPT -c outputs/graphics_out.ml
    File "outputs/graphics_out.ml", line 35, characters 4-23:
    Error: Unbound value Graphics.open_graph
    make[3]: *** [outputs/graphics_out.cmx] Error 2
    make[3]: Leaving directory `/usr/local/src/liquidsoap-1.0.0-beta3-full/liquidsoap-1.0.0 -beta3/src'
    make[2]: *** [all-auto-ocaml-prog] Error 2
    make[2]: Leaving directory `/usr/local/src/liquidsoap-1.0.0-beta3-full/liquidsoap-1.0.0 -beta3/src'
    make[1]: *** [all-subdirs] Error 2
    make[1]: Leaving directory `/usr/local/src/liquidsoap-1.0.0-beta3-full/liquidsoap-1.0.0 -beta3'
    make: *** [all] Error 1


    Apparently this is a bug fixed in the latest hg. I know this didn't happen when I ran the latest hg update.

    Apparently it's solved by installing libcamlimages-ocaml-dev but the issue is it should follow the PACKAGES file which is fixed in the latest hg.

    Ref: http://comments.gmane.org/gmane.comp.audio.liquidsoap.user/2636

  • Thanks for this. When we compiled we just installed the -dev package, but good to know they fixed this in the configure script.
    Airtime Pro Hosting: http://airtime.pro
  • It appears the issue with the compiled liquidsoap not working with airtime is when aac+ is enabled in packages. Even if airtime doesn't instruct it to create an AAC+ mount point in icecast, it still gives this error. Odd.