Re: [Savonet-users] Liquidsoap on FreeBSD
Hi ! Thanks for you detailled report. Here are some comments: Le Tuesday 26 May 2009 05:30:10 Andrew, vous avez écrit : In order to get configure to go through cleanly I had to use this configure command: CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib CPPFLAGS=-I/ usr/local/include ./configure Ok. That is probably normal. To compile with OSS support I needed to create /usr/src/include/linux and copy the following sound include files there: cp /usr/src/sys/dev/sound/pcm/sound.h /usr/src/include/linux/sound.h cp /usr/src/sys/sys/soundcard.h /usr/src/include/linux/soundcard.h Could you check with the attached patch if it fixes oss compilation for you without this hack ? With the LDFLAGS on the command line I was able to make it go through the configure process successfully, however make would continually fail. To fix the issues with make I had to symlink the following libraries from /usr/local/lib to /usr/lib ln -sf /usr/local/lib/libmp3lame.so /usr/lib/libmp3lame.so ln -s /usr/local/lib/libmad.so /usr/lib/libmad.so ln -sf /usr/local/lib/libogg.so /usr/lib/libogg.so ln -sf /usr/local/lib/libvorbisenc.so /usr/lib/libvorbisenc.so ln -sf /usr/local/lib/libvorbisfile.so /usr/lib/libvorbisfile.so ln -sf /usr/local/lib/libshout.so /usr/lib/libshout.so ln -sf /usr/local/lib/libfaac.so /usr/lib/libfaac.so ln -sf /usr/local/lib/libfaad.so /usr/lib/libfaad.so ln -sf /usr/local/lib/libsamplerate.so /usr/lib/libsamplerate.so ln -sf /usr/local/lib/libtag.so /usr/lib/libtag.so ln -sf /usr/local/lib/libtag_c.so /usr/lib/libtag_c.so Ok. We had found the issue for this some times ago. I just made a big commit on trunk/ in order to fix this. Could you try with the latest SVN trunk if you can compile without this hack ? This fixed the problems of finding codecs and such, however despite specifically compiling using gmake it would try and use the FreeBSD make instead. This forced me to temporarily rename the BSD version and symlink gmake: mv /usr/bin/make /usr/bin/make.good ln -sf /usr/local/bin/gmake /usr/bin/make make Hmm.. We have tried to remove all hardcoded make calls. Apparently there still are some of them.. Could you send us the compilation logs where this fails so that we can fix them ? And lastly in order for 'make install' to work I had to add a user and group named liquidsoap using adduser: adduser make install Hmmm.. So far, this part is assumed to be done by the user/administrator: # User ${user} and group ${group} are expected to exist. # They are defined in Makefile.defs, written by configure. However, since you are not the first to complain, I wonder whether this could be done in a better way.. This produced a working /usr/local/bin/liquidsoap binary that worked with OSS audio input. Good ! You seemed quite patient :) For some reason though I had to remove the /usr/local/lib/liquidsoap/ 0.9.0/utils.liq file as the program would just hang there with it in place. That is really strange. Using liquidsoap without utils.liq will be mush less usefull. A lot of useful functions are defined there.. It would be good to debug and fix this issue.. Do you have more informations ? Romain Index: configure.ac === --- configure.ac (révision 6589) +++ configure.ac (copie de travail) @@ -1166,7 +1166,7 @@ AC_ARG_ENABLE([oss],AC_HELP_STRING([--disable-oss],[don't use OSS])) if test x$enable_oss != xno ; then - AC_CHECK_HEADERS([linux/sound.h],[W_OSS=yes]) + AC_CHECK_HEADERS([sys/soundcard.h],[W_OSS=yes]) fi AC_SUBST(W_OSS) Index: src/io/oss_io_c.c === --- src/io/oss_io_c.c (révision 6589) +++ src/io/oss_io_c.c (copie de travail) @@ -5,7 +5,7 @@ #include caml/misc.h #include caml/mlvalues.h -#include linux/soundcard.h +#include sys/soundcard.h #include sys/ioctl.h #include assert.h -- Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT is a gathering of tech-side developers brand creativity professionals. Meet the minds behind Google Creative Lab, Visual Complexity, Processing, iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian Group, R/GA, Big Spaceship. http://www.creativitycat.com ___ Savonet-users mailing list Savonet-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/savonet-users
Re: [Savonet-users] Liquidsoap on FreeBSD
Le Tuesday 26 May 2009 13:36:27, vous avez écrit : Could you check with the attached patch if it fixes oss compilation for you without this hack ? Unfortunately it did not. I got this: checking linux/sound.h usability... no checking linux/sound.h presence... no And at the end: - OSS : no The patch did apply cleanly in the savonet/liquidsoap directory. I forgot to mention that you need to run ./bootstrap again for this patch to work.. Ok. We had found the issue for this some times ago. I just made a big commit on trunk/ in order to fix this. Could you try with the latest SVN trunk if you can compile without this hack ? I just tried SVN revision 6591 and that seems to have fixed things. However I did need to run gmake with the LDFLAGS: CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib CPPFLAGS=-I/ usr/local/include gmake after that it compiled cleanly without having to make any symlinks to libraries or gmake. Great ! It seems strange that you still need to pass the compilation variables. However, this is far much better.. Hmmm.. So far, this part is assumed to be done by the user/administrator: # User ${user} and group ${group} are expected to exist. # They are defined in Makefile.defs, written by configure. However, since you are not the first to complain, I wonder whether this could be done in a better way.. I think if there was some information in INSTALL that would be suitable. It just threw me off because I wasn't expecting that. Yes. I think we should detect when the user/group does not exist and issue an error in this case.. The LDFLAGS on the command line was also a bit non-intuitive as I'm used to libraries being automatically discovered when running ./configure -- prefix=/usr/local. It's not a big deal though. Ok, I will look at that. That is really strange. Using liquidsoap without utils.liq will be mush less usefull. A lot of useful functions are defined there.. It would be good to debug and fix this issue.. Do you have more informations ? The SVN releases seems to have fixed this issue as well. Good ! One note. With ocaml-faac and ocaml-faad enabled in PACKAGES it would not compile cleanly. I don't particularly need regular AAC so that is ok for my purposes, but I thought I would report it: Ok, will look at that. Romain -- Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT is a gathering of tech-side developers brand creativity professionals. Meet the minds behind Google Creative Lab, Visual Complexity, Processing, iPhoneDevCamp asthey present alongside digital heavyweights like Barbarian Group, R/GA, Big Spaceship. http://www.creativitycat.com ___ Savonet-users mailing list Savonet-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/savonet-users
Re: [Savonet-users] Liquidsoap on FreeBSD
Could you check with the attached patch if it fixes oss compilation for you without this hack ? Unfortunately it did not. I got this: checking linux/sound.h usability... no checking linux/sound.h presence... no And at the end: - OSS : no The patch did apply cleanly in the savonet/liquidsoap directory. Ok. We had found the issue for this some times ago. I just made a big commit on trunk/ in order to fix this. Could you try with the latest SVN trunk if you can compile without this hack ? I just tried SVN revision 6591 and that seems to have fixed things. However I did need to run gmake with the LDFLAGS: CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib CPPFLAGS=-I/ usr/local/include gmake after that it compiled cleanly without having to make any symlinks to libraries or gmake. Hmmm.. So far, this part is assumed to be done by the user/administrator: # User ${user} and group ${group} are expected to exist. # They are defined in Makefile.defs, written by configure. However, since you are not the first to complain, I wonder whether this could be done in a better way.. I think if there was some information in INSTALL that would be suitable. It just threw me off because I wasn't expecting that. The LDFLAGS on the command line was also a bit non-intuitive as I'm used to libraries being automatically discovered when running ./configure -- prefix=/usr/local. It's not a big deal though. That is really strange. Using liquidsoap without utils.liq will be mush less usefull. A lot of useful functions are defined there.. It would be good to debug and fix this issue.. Do you have more informations ? The SVN releases seems to have fixed this issue as well. One note. With ocaml-faac and ocaml-faad enabled in PACKAGES it would not compile cleanly. I don't particularly need regular AAC so that is ok for my purposes, but I thought I would report it: gmake[3]: Entering directory `/root/downloads/liqsvn/savonet/ocaml- faad/src' /usr/local/bin/ocamlc.opt -c -cc gcc -ccopt -fPIC -I/usr/local/ include -Wall -DCAML_NAME_SPACE \ -DPIC -I/usr/local/include \ -o faad_stubs.o faad_stubs.c faad_stubs.c:43:19: error: mp4ff.h: No such file or directory faad_stubs.c: In function 'ocaml_faad_init': faad_stubs.c:78: warning: passing argument 4 of 'NeAACDecInit' from incompatible pointer type faad_stubs.c: In function 'ocaml_faad_init2': faad_stubs.c:95: warning: passing argument 4 of 'NeAACDecInit2' from incompatible pointer type faad_stubs.c: At top level: faad_stubs.c:150: error: expected specifier-qualifier-list before 'mp4ff_t' faad_stubs.c: In function 'finalize_mp4': faad_stubs.c:165: error: 'mp4_t' has no member named 'ff' faad_stubs.c:166: warning: implicit declaration of function 'mp4ff_close' faad_stubs.c:166: error: 'mp4_t' has no member named 'ff' faad_stubs.c:167: error: 'mp4_t' has no member named 'read_cb' faad_stubs.c:168: error: 'mp4_t' has no member named 'read_cb' faad_stubs.c:169: error: 'mp4_t' has no member named 'write_cb' faad_stubs.c:170: error: 'mp4_t' has no member named 'write_cb' faad_stubs.c:171: error: 'mp4_t' has no member named 'seek_cb' faad_stubs.c:172: error: 'mp4_t' has no member named 'seek_cb' faad_stubs.c:173: error: 'mp4_t' has no member named 'trunc_cb' faad_stubs.c:174: error: 'mp4_t' has no member named 'trunc_cb' faad_stubs.c: In function 'read_cb': faad_stubs.c:195: error: 'mp4_t' has no member named 'fd' faad_stubs.c:196: error: 'mp4_t' has no member named 'fd' faad_stubs.c:200: error: 'mp4_t' has no member named 'read_cb' faad_stubs.c:210: warning: control reaches end of non-void function faad_stubs.c: In function 'write_cb': faad_stubs.c:216: error: 'mp4_t' has no member named 'fd' faad_stubs.c:217: error: 'mp4_t' has no member named 'fd' faad_stubs.c:220: warning: control reaches end of non-void function faad_stubs.c: In function 'seek_cb': faad_stubs.c:228: error: 'mp4_t' has no member named 'fd' faad_stubs.c:229: error: 'mp4_t' has no member named 'fd' faad_stubs.c:233: error: 'mp4_t' has no member named 'seek_cb' faad_stubs.c:240: warning: control reaches end of non-void function faad_stubs.c: In function 'ocaml_faad_mp4_open_read': faad_stubs.c:255: error: 'mp4_t' has no member named 'fd' faad_stubs.c:256: error: 'mp4_t' has no member named 'ff_cb' faad_stubs.c:257: error: 'mp4_t' has no member named 'read_cb' faad_stubs.c:258: error: 'mp4_t' has no member named 'read_cb' faad_stubs.c:261: error: 'mp4_t' has no member named 'ff_cb' faad_stubs.c:262: error: 'mp4_t' has no member named 'write_cb' faad_stubs.c:263: error: 'mp4_t' has no member named 'write_cb' faad_stubs.c:267: error: 'mp4_t' has no member named 'ff_cb' faad_stubs.c:268: error: 'mp4_t' has no member named 'write_cb' faad_stubs.c:272: error: 'mp4_t' has no member named 'ff_cb' faad_stubs.c:273: error: 'mp4_t' has no member named 'seek_cb' faad_stubs.c:274: