A re-write of the firefly media server (mt-daapd). It's released under GPLv2+. Please note that this git repository is a mirror of the official one at git://git.debian.org/~jblache/forked-daapd.git
I am trying to get this compiled to work on CentOS 6.2, and keep running into issues during compile time. I've done some searching on the web, and haven't had much luck getting things to finalize. I seem to have all the dependencies installed, but during the make process I am getting an ambiguous error message:
[root@tigon forked-daapd-0.19]# ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-flac --enable-musepack --enable-itunes
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define EXTENSIONS... yes
checking for gcc... (cached) gcc
checking whether we are using the GNU C compiler... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to accept ISO C89... (cached) none needed
checking dependency style of gcc... (cached) gcc3
checking whether gcc and cc understand -c and -o together... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1966080
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert i686-pc-linux-gnu file names to i686-pc-linux-gnu format... func_convert_file_noop
checking how to convert i686-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @jasonmc LE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for gperf... gperf
checking for antlr3... antlr3
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking dirent.h usability... yes
checking dirent.h presence... yes
checking for dirent.h... yes
checking for posix_fadvise... yes
checking for strptime... yes
checking for strtok_r... yes
checking for timegm... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... 64
checking for off_t... yes
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking for iconv... yes
checking for working iconv... yes
checking for iconv declaration...
extern size_t iconv (iconv_t cd, char * _inbuf, size_t inbytesleft, char * outbuf, size_t outbytesleft);
checking for libunistring... yes
checking how to link with libunistring... -lunistring
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for ZLIB... yes
checking for CONFUSE... yes
checking for AVAHI... yes
checking for SQLITE3... yes
checking for sqlite3_unlock_notify in -lsqlite3... yes
checking if SQLite3 was built with threadsafe operations support... yes
checking for LIBAV... yes
checking for av_lockmgr_register in -lavcodec... yes
checking for MINIXML... yes
checking event.h usability... yes
checking event.h presence... yes
checking for event.h... yes
checking for event_init in -levent_core... yes
checking avl.h usability... yes
checking avl.h presence... yes
checking for avl.h... yes
checking for avl_alloc_tree in -lavl... yes
checking antlr3.h usability... yes
checking antlr3.h presence... yes
checking for antlr3.h... yes
checking for antlr3BaseRecognizerNew in -lantlr3c... yes
checking for antlr3NewAsciiStringInPlaceStream in -lantlr3c... no
checking for libgcrypt-config... /usr/bin/libgcrypt-config
checking for LIBGCRYPT - version >= 1.2.0... yes (1.4.5)
checking LIBGCRYPT API version... okay
checking for gpg-error-config... /usr/bin/gpg-error-config
checking for GPG Error - version >= 1.6... yes (1.7)
checking for FLAC... yes
checking for TAGLIB... yes
checking for LIBPLIST... yes
checking for ALSA... yes
checking sys/eventfd.h usability... yes
checking sys/eventfd.h presence... yes
checking for sys/eventfd.h... yes
checking for eventfd... yes
checking sys/signalfd.h usability... yes
checking sys/signalfd.h presence... yes
checking for sys/signalfd.h... yes
checking sys/timerfd.h usability... yes
checking sys/timerfd.h presence... yes
checking for sys/timerfd.h... yes
checking for timerfd_create... yes
checking size of void ... 4
checking getopt.h usability... yes
checking getopt.h presence... yes
checking for getopt.h... yes
checking for stdint.h... (cached) yes
checking for ANSI C header files... (cached) yes
checking for sys/wait.h that is POSIX.1 compatible... (cached) yes
configure: creating ./config.status
config.status: creating src/Makefile
config.status: creating sqlext/Makefile
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
[root@tigon forked-daapd-0.19]# make
make all-recursive
make[1]: Entering directory /usr/local/src/forked-daapd-0.19' Making all in sqlext make[2]: Entering directory/usr/local/src/forked-daapd-0.19/sqlext'
/bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DFLAC -DMUSEPACK -DITUNES -g -O2 -Wall -D_LARGEFILE_SOURCE -MT sqlext.lo -MD -MP -MF .deps/sqlext.Tpo -c -o sqlext.lo sqlext.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DFLAC -DMUSEPACK -DITUNES -g -O2 -Wall -D_LARGEFILE_SOURCE -MT sqlext.lo -MD -MP -MF .deps/sqlext.Tpo -c sqlext.c -fPIC -DPIC -o .libs/sqlext.o
mv -f .deps/sqlext.Tpo .deps/sqlext.Plo
/bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -Wall -D_LARGEFILE_SOURCE -avoid-version -module -shared -o forked-daapd-sqlext.la -rpath /usr/lib/forked-daapd sqlext.lo -lunistring
libtool: link: gcc -shared -fPIC -DPIC .libs/sqlext.o -lunistring -O2 -Wl,-soname -Wl,forked-daapd-sqlext.so -o .libs/forked-daapd-sqlext.so
libtool: link: ( cd ".libs" && rm -f "forked-daapd-sqlext.la" && ln -s "../forked-daapd-sqlext.la" "forked-daapd-sqlext.la" )
make[2]: Leaving directory /usr/local/src/forked-daapd-0.19/sqlext' Making all in src make[2]: Entering directory/usr/local/src/forked-daapd-0.19/src'
antlr3 -depend DAAP2SQL.g > DAAP2SQL.u
ANTLR Parser Generator Version 3.1.1
antlr3 -depend DAAP.g > DAAP.u
ANTLR Parser Generator Version 3.1.1
antlr3 -depend RSP2SQL.g > RSP2SQL.u
ANTLR Parser Generator Version 3.1.1
antlr3 -depend RSP.g > RSP.u
ANTLR Parser Generator Version 3.1.1
make[2]: Leaving directory /usr/local/src/forked-daapd-0.19/src' make[2]: Entering directory/usr/local/src/forked-daapd-0.19/src'
if gperf daap_query.gperf > daap_query_hash.c.tmp; then \
mv daap_query_hash.c.tmp daap_query_hash.c; \
elif gperf --version >/dev/null 2>&1; then \
rm daap_query_hash.c.tmp; \
exit 1; \
else \
rm daap_query_hash.c.tmp; \
touch daap_query_hash.c; \
fi
if gperf rsp_query.gperf > rsp_query_hash.c.tmp; then \
mv rsp_query_hash.c.tmp rsp_query_hash.c; \
elif gperf --version >/dev/null 2>&1; then \
rm rsp_query_hash.c.tmp; \
exit 1; \
else \
rm rsp_query_hash.c.tmp; \
touch rsp_query_hash.c; \
fi
if gperf dacp_prop.gperf > dacp_prop_hash.c.tmp; then \
mv dacp_prop_hash.c.tmp dacp_prop_hash.c; \
elif gperf --version >/dev/null 2>&1; then \
rm dacp_prop_hash.c.tmp; \
exit 1; \
else \
rm dacp_prop_hash.c.tmp; \
touch dacp_prop_hash.c; \
fi
if gperf dmap_fields.gperf > dmap_fields_hash.c.tmp; then \
mv dmap_fields_hash.c.tmp dmap_fields_hash.c; \
elif gperf --version >/dev/null 2>&1; then \
rm dmap_fields_hash.c.tmp; \
exit 1; \
else \
rm dmap_fields_hash.c.tmp; \
touch dmap_fieldshash.c; \
fi
antlr3 RSP.g
ANTLR Parser Generator Version 3.1.1
Generating RSPParser.c
Generating RSPParser.h
Generating RSPLexer.c
Generating RSPLexer.h
make[2]: Leaving directory `/usr/local/src/forked-daapd-0.19/src'
make[1]: ** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/forked-daapd-0.19'
make: *\ [all] Error 2
Am I missing what is causing the specific errors? I've tried the git repository, the release tarballs, and neither are working for me. This is a fresh install of CentOS, so I cannot find what is getting in the way of this compiling.
I am trying to get this compiled to work on CentOS 6.2, and keep running into issues during compile time. I've done some searching on the web, and haven't had much luck getting things to finalize. I seem to have all the dependencies installed, but during the make process I am getting an ambiguous error message:
[root@tigon forked-daapd-0.19]# ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-flac --enable-musepack --enable-itunes checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for style of include used by make... GNU checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking minix/config.h usability... no checking minix/config.h presence... no checking for minix/config.h... no checking whether it is safe to define EXTENSIONS... yes checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ISO C89... (cached) none needed checking dependency style of gcc... (cached) gcc3 checking whether gcc and cc understand -c and -o together... yes checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking how to print strings... printf checking for a sed that does not truncate output... /bin/sed checking for fgrep... /bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1966080 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert i686-pc-linux-gnu file names to i686-pc-linux-gnu format... func_convert_file_noop checking how to convert i686-pc-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @jasonmc LE support... @ checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for mt... no checking if : is a manifest tool... no checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... no checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking for gperf... gperf checking for antlr3... antlr3 checking sys/wait.h usability... yes checking sys/wait.h presence... yes checking for sys/wait.h... yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking sys/select.h usability... yes checking sys/select.h presence... yes checking for sys/select.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking for posix_fadvise... yes checking for strptime... yes checking for strtok_r... yes checking for timegm... yes checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... 64 checking for off_t... yes checking for ld used by GCC... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for shared library run path origin... done checking for iconv... yes checking for working iconv... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, char * _inbuf, size_t inbytesleft, char * outbuf, size_t outbytesleft); checking for libunistring... yes checking how to link with libunistring... -lunistring checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for ZLIB... yes checking for CONFUSE... yes checking for AVAHI... yes checking for SQLITE3... yes checking for sqlite3_unlock_notify in -lsqlite3... yes checking if SQLite3 was built with threadsafe operations support... yes checking for LIBAV... yes checking for av_lockmgr_register in -lavcodec... yes checking for MINIXML... yes checking event.h usability... yes checking event.h presence... yes checking for event.h... yes checking for event_init in -levent_core... yes checking avl.h usability... yes checking avl.h presence... yes checking for avl.h... yes checking for avl_alloc_tree in -lavl... yes checking antlr3.h usability... yes checking antlr3.h presence... yes checking for antlr3.h... yes checking for antlr3BaseRecognizerNew in -lantlr3c... yes checking for antlr3NewAsciiStringInPlaceStream in -lantlr3c... no checking for libgcrypt-config... /usr/bin/libgcrypt-config checking for LIBGCRYPT - version >= 1.2.0... yes (1.4.5) checking LIBGCRYPT API version... okay checking for gpg-error-config... /usr/bin/gpg-error-config checking for GPG Error - version >= 1.6... yes (1.7) checking for FLAC... yes checking for TAGLIB... yes checking for LIBPLIST... yes checking for ALSA... yes checking sys/eventfd.h usability... yes checking sys/eventfd.h presence... yes checking for sys/eventfd.h... yes checking for eventfd... yes checking sys/signalfd.h usability... yes checking sys/signalfd.h presence... yes checking for sys/signalfd.h... yes checking sys/timerfd.h usability... yes checking sys/timerfd.h presence... yes checking for sys/timerfd.h... yes checking for timerfd_create... yes checking size of void ... 4 checking getopt.h usability... yes checking getopt.h presence... yes checking for getopt.h... yes checking for stdint.h... (cached) yes checking for ANSI C header files... (cached) yes checking for sys/wait.h that is POSIX.1 compatible... (cached) yes configure: creating ./config.status config.status: creating src/Makefile config.status: creating sqlext/Makefile config.status: creating Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands [root@tigon forked-daapd-0.19]# make make all-recursive make[1]: Entering directory
/usr/local/src/forked-daapd-0.19' Making all in sqlext make[2]: Entering directory
/usr/local/src/forked-daapd-0.19/sqlext' /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DFLAC -DMUSEPACK -DITUNES -g -O2 -Wall -D_LARGEFILE_SOURCE -MT sqlext.lo -MD -MP -MF .deps/sqlext.Tpo -c -o sqlext.lo sqlext.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DFLAC -DMUSEPACK -DITUNES -g -O2 -Wall -D_LARGEFILE_SOURCE -MT sqlext.lo -MD -MP -MF .deps/sqlext.Tpo -c sqlext.c -fPIC -DPIC -o .libs/sqlext.o mv -f .deps/sqlext.Tpo .deps/sqlext.Plo /bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -Wall -D_LARGEFILE_SOURCE -avoid-version -module -shared -o forked-daapd-sqlext.la -rpath /usr/lib/forked-daapd sqlext.lo -lunistring libtool: link: gcc -shared -fPIC -DPIC .libs/sqlext.o -lunistring -O2 -Wl,-soname -Wl,forked-daapd-sqlext.so -o .libs/forked-daapd-sqlext.so libtool: link: ( cd ".libs" && rm -f "forked-daapd-sqlext.la" && ln -s "../forked-daapd-sqlext.la" "forked-daapd-sqlext.la" ) make[2]: Leaving directory/usr/local/src/forked-daapd-0.19/sqlext' Making all in src make[2]: Entering directory
/usr/local/src/forked-daapd-0.19/src' antlr3 -depend DAAP2SQL.g > DAAP2SQL.u ANTLR Parser Generator Version 3.1.1 antlr3 -depend DAAP.g > DAAP.u ANTLR Parser Generator Version 3.1.1 antlr3 -depend RSP2SQL.g > RSP2SQL.u ANTLR Parser Generator Version 3.1.1 antlr3 -depend RSP.g > RSP.u ANTLR Parser Generator Version 3.1.1 make[2]: Leaving directory/usr/local/src/forked-daapd-0.19/src' make[2]: Entering directory
/usr/local/src/forked-daapd-0.19/src' if gperf daap_query.gperf > daap_query_hash.c.tmp; then \ mv daap_query_hash.c.tmp daap_query_hash.c; \ elif gperf --version >/dev/null 2>&1; then \ rm daap_query_hash.c.tmp; \ exit 1; \ else \ rm daap_query_hash.c.tmp; \ touch daap_query_hash.c; \ fi if gperf rsp_query.gperf > rsp_query_hash.c.tmp; then \ mv rsp_query_hash.c.tmp rsp_query_hash.c; \ elif gperf --version >/dev/null 2>&1; then \ rm rsp_query_hash.c.tmp; \ exit 1; \ else \ rm rsp_query_hash.c.tmp; \ touch rsp_query_hash.c; \ fi if gperf dacp_prop.gperf > dacp_prop_hash.c.tmp; then \ mv dacp_prop_hash.c.tmp dacp_prop_hash.c; \ elif gperf --version >/dev/null 2>&1; then \ rm dacp_prop_hash.c.tmp; \ exit 1; \ else \ rm dacp_prop_hash.c.tmp; \ touch dacp_prop_hash.c; \ fi if gperf dmap_fields.gperf > dmap_fields_hash.c.tmp; then \ mv dmap_fields_hash.c.tmp dmap_fields_hash.c; \ elif gperf --version >/dev/null 2>&1; then \ rm dmap_fields_hash.c.tmp; \ exit 1; \ else \ rm dmap_fields_hash.c.tmp; \ touch dmap_fieldshash.c; \ fi antlr3 RSP.g ANTLR Parser Generator Version 3.1.1 Generating RSPParser.c Generating RSPParser.h Generating RSPLexer.c Generating RSPLexer.h make[2]: Leaving directory `/usr/local/src/forked-daapd-0.19/src' make[1]: ** [all-recursive] Error 1 make[1]: Leaving directory `/usr/local/src/forked-daapd-0.19' make: *\ [all] Error 2Am I missing what is causing the specific errors? I've tried the git repository, the release tarballs, and neither are working for me. This is a fresh install of CentOS, so I cannot find what is getting in the way of this compiling.
Thanks in advance for your assistance.
--Michael