Discussion:
compile problems
Vladimir Todorov
2011-05-29 10:04:15 UTC
Permalink
Guys, I have problems compiling the pu branch.

vtodorov ~/src/cmus $ ./configure
checking for program gcc... /usr/bin/gcc
checking for program gcc... /usr/bin/gcc
checking for CFLAGS -std=gnu99 -pipe -Wall -Wshadow -Wcast-align
-Wpointer-arith -Wwrite-strings -Wundef -Wmissing-prototypes
-Wredundant-decls -Wextra -Wno-sign-compare -Wformat-security... yes
checking for CFLAGS -Wdeclaration-after-statement... yes
checking for CFLAGS -Wold-style-definition... yes
checking for CFLAGS -Wno-pointer-sign... yes
checking for CFLAGS -Werror-implicit-function-declaration... yes
checking for CFLAGS -Wno-unused-parameter... yes
checking if CC can generate dependency information... yes
checking byte order... little-endian
checking for DL_LIBS (-ldl -Wl,--export-dynamic)... yes
checking for PTHREAD_LIBS (-lpthread)... yes
checking for realtime scheduling... yes
checking for NCURSES_LIBS (-lncursesw)... yes
checking for working ncurses setup... yes
checking for function resizeterm... yes
checking for function use_default_colors... yes
checking for ICONV_LIBS (-liconv)... no
assuming libc contains iconv
checking for working iconv... yes
checking for header <byteswap.h>... yes
checking for function strdup... yes
checking for function strndup... yes
checking for program pkg-config... /usr/bin/pkg-config
checking for CDDB_LIBS (pkg-config)... no
checking for CDDB_LIBS (-lcddb)... no
checking for CDIO_LIBS (pkg-config)... no
checking for CDIO_LIBS (-lcdio_cdio -lcdio -lm)... no
checking for FLAC_LIBS (pkg-config)... -lFLAC -lm
checking for FLAC_CFLAGS (pkg-config)... -I/usr/include/FLAC
checking for MAD_LIBS (pkg-config)... -lmad
checking for MAD_CFLAGS (pkg-config)...
checking for MODPLUG_LIBS (pkg-config)... -lmodplug
checking for MODPLUG_CFLAGS (pkg-config)... -I/usr/include/libmodplug
checking for function ModPlug_GetModuleType... yes
checking for header <mpc/mpcdec.h>... yes
checking for MPC_LIBS (-lmpcdec -lm)... yes
checking for VORBIS_LIBS (pkg-config)... -lvorbisfile -lvorbis -lm -logg
checking for VORBIS_CFLAGS (pkg-config)...
checking for WAVPACK_LIBS (pkg-config)... -lwavpack -lm
checking for WAVPACK_CFLAGS (pkg-config)...
checking for header <mp4v2/mp4v2.h>... no
checking for header <mp4.h>... yes
checking for header <neaacdec.h>... yes
checking for MP4_LIBS (-lmp4v2 -lfaad -lm)... yes
checking for header <neaacdec.h>... yes
checking for AAC_LIBS (-lfaad -lm)... yes
checking for FFMPEG_LIBS (pkg-config)... -lavformat
checking for FFMPEG_CFLAGS (pkg-config)...
checking for header <libavcodec/avcodec.h>... yes
checking for PULSE_LIBS (pkg-config)... -lpulse
checking for PULSE_CFLAGS (pkg-config)... -D_REENTRANT
checking for ALSA_LIBS (pkg-config)... -lasound
checking for ALSA_CFLAGS (pkg-config)... -I/usr/include/alsa
checking for AO_LIBS (pkg-config)... -lao
checking for AO_CFLAGS (pkg-config)...
checking for program artsc-config... no
checking for header <sys/soundcard.h>... yes
checking for header <sys/audioio.h>... no
checking for ROAR_LIBS (pkg-config)... no
checking for ROAR_LIBS (-lroar)... no


and after that
vtodorov ~/src/cmus $ make
CC command_mode.o
CC tree.o
LD cmus
CC nomad.lo
LD mad.so
CC mp4.lo
mp4.c: In function 'object_type_to_str':
mp4.c:540: error: 'MP4_MPEG4_AAC_HE_AUDIO_TYPE' undeclared (first use in
this function)
mp4.c:540: error: (Each undeclared identifier is reported only once
mp4.c:540: error: for each function it appears in.)
make: *** [mp4.lo] Error 1

Before that I tried the same thing on maint and it compiled but I wasn't
able to play any mp3 files. Actually I was able to play only .wav files. No
other files were found while I was updating my library.

Suggestions?
Gregory Petrosyan
2011-05-29 10:40:18 UTC
Permalink
Post by Vladimir Todorov
checking for header <mp4v2/mp4v2.h>... no
checking for header <mp4.h>... yes
CC mp4.lo
mp4.c:540: error: 'MP4_MPEG4_AAC_HE_AUDIO_TYPE' undeclared (first use in
this function)
Hm, looks like this identifier is not available in all versions of mp4.h. Can
you please say what version of mp4 devel package are you using? Or just attach
the header to the email.

BTW, you can try building pu branch with ./configure CONFIG_MP4=n for now, if
you do not need mp4 support.
Post by Vladimir Todorov
checking for MAD_LIBS (pkg-config)... -lmad
checking for MAD_CFLAGS (pkg-config)...
Before that I tried the same thing on maint and it compiled but I wasn't
able to play any mp3 files. Actually I was able to play only .wav files. No
other files were found while I was updating my library.
This is very strange: you have MAD devel package installed! Can you please do

make clean && make && make install

for maint, and post the output of "cmus --plugins"?

Gregory
Vladimir Todorov
2011-05-29 11:11:44 UTC
Permalink
libmp4v2-dev
version: 2.0.0+cvs20040908+mp4v2+bmp-0ubuntu3.6.06.1

Hm I am running Debian but I think that this is not a problem?
Post by Gregory Petrosyan
This is very strange: you have MAD devel package installed! Can you please do
make clean && make && make install
for maint,
This did the trick. But when cmus started it didn't have output_plugin set
so I set it to pulse and it is ok now.
Post by Gregory Petrosyan
and post the output of "cmus --plugins"?
cmus --plugins
Input Plugins: /usr/local/lib/cmus/ip
mad:
Priority: 55
File Types: mp3 mp2
MIME Types: audio/mpeg audio/x-mp3 audio/x-mpeg
modplug:
Priority: 50
File Types: mod s3m xm it 669 amf ams dbm dmf dsm far mdl med mtm okt
ptm stm ult umx mt2 psm
MIME Types:
wavpack:
Priority: 50
File Types: wv
MIME Types: audio/x-wavpack
aac:
Priority: 50
File Types: aac
MIME Types: audio/aac audio/aacp
mpc:
Priority: 50
File Types: mpc mpp mp+
MIME Types: audio/x-musepack
vorbis:
Priority: 50
File Types: ogg
MIME Types: application/ogg audio/x-ogg
wav:
Priority: 50
File Types: wav
MIME Types:
flac:
Priority: 50
File Types: flac fla
MIME Types:
mp4:
Priority: 50
File Types: mp4 m4a m4b
MIME Types:
ffmpeg:
Priority: 30
File Types: ac3 aif aifc aiff ape au mka shn tta wma aac fla flac m4a
m4b mp+ mp2 mp3 mp4 mpc mpp ogg wav wv
MIME Types:

Output Plugins: /usr/local/lib/cmus/op
pulse
alsa
oss
ao



Thank you, I have the latest version running now I will test the new
features.
And also can You explain me which branch for what is used. What is the
difference between pu and maint.
Gregory Petrosyan
2011-05-29 11:31:18 UTC
Permalink
Post by Vladimir Todorov
libmp4v2-dev
version: 2.0.0+cvs20040908+mp4v2+bmp-0ubuntu3.6.06.1
Hm I am running Debian but I think that this is not a problem?
Of course not! I believe pu branch should build just fine one Debian.

Can you please re-do

make clean
./configure
make

for pu, and report back if it compiles or not?
Post by Vladimir Todorov
Thank you, I have the latest version running now I will test the new
features.
And also can You explain me which branch for what is used. What is the
difference between pu and maint.
Basically, there are 3 main branches: maint, master and pu. Maint is
short for maintenance: it contains latest released version + only the
bug fixes since the release. Maintenance (minor) releases are made
from maint. Master is the main branch, from which next major release
will be made. And pu is short for "proposed updates". It contains all
the new features before they are considered mature enough for master.

                Gregory
Vladimir Todorov
2011-05-29 12:10:05 UTC
Permalink
Post by Gregory Petrosyan
Can you please re-do
make clean
./configure
make
for pu, and report back if it compiles or not?
It still fails to compile.

mp4.c: In function 'object_type_to_str':
mp4.c:540: error: 'MP4_MPEG4_AAC_HE_AUDIO_TYPE' undeclared (first use in
this function)
mp4.c:540: error: (Each undeclared identifier is reported only once
mp4.c:540: error: for each function it appears in.)
make: *** [mp4.lo] Error 1

Thanks for the explanation on the branches.

/v
Johannes Weißl
2011-05-29 22:57:59 UTC
Permalink
Hello Vladimir,
Post by Vladimir Todorov
It still fails to compile.
mp4.c:540: error: 'MP4_MPEG4_AAC_HE_AUDIO_TYPE' undeclared (first use in
this function)
mp4.c:540: error: (Each undeclared identifier is reported only once
mp4.c:540: error: for each function it appears in.)
make: *** [mp4.lo] Error 1
Thanks for reporting this error and for testing the latest cmus
features! Your version of mp4v2 is really old and doesn't declare this
definition (but all other *_AUDIO_TYPE are defined). I wrote a patch
that solves this!

Greetings,
Johannes
Johannes Weißl
2011-05-29 23:05:10 UTC
Permalink
MP4_MPEG4_AAC_HE_AUDIO_TYPE is not defined in old versions of mp4v2:
It is defined in 1.2, but not in 0.9.8.6.

Reported-by: Vladimir Todorov <***@gmail.com>
---
mp4.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/mp4.c b/mp4.c
index 53eaad2..f9400ea 100644
--- a/mp4.c
+++ b/mp4.c
@@ -537,7 +537,9 @@ static const char *object_type_to_str(uint8_t obj_type)
case MP4_MPEG4_AAC_LC_AUDIO_TYPE: return "LC";
case MP4_MPEG4_AAC_SSR_AUDIO_TYPE: return "SSR";
case MP4_MPEG4_AAC_LTP_AUDIO_TYPE: return "LTP";
+#ifdef MP4_MPEG4_AAC_HE_AUDIO_TYPE
case MP4_MPEG4_AAC_HE_AUDIO_TYPE: return "HE";
+#endif
case MP4_MPEG4_AAC_SCALABLE_AUDIO_TYPE: return "Scalable";
}
return NULL;
--
1.7.5.1
Gregory Petrosyan
2011-06-01 13:17:02 UTC
Permalink
Post by Johannes Weißl
It is defined in 1.2, but not in 0.9.8.6.
Almost forgot to merge this :-) Finally, done!

Gregory

Loading...