Туплю чего-то сегодня, извиняйте.
Хочу собрать mencoder с последним XviD.
Взял MPlayer-1.0pre7try2, xvidcore-1.1.0-beta2.
xvid собрался без проблем, но вот mplayer определил что xvid есть,
но при сборке кодеков вывалил такую вот гадость:
vd_xvid.c:72: error: `XVID_INIT_PARAM' undeclared (first use in this function)
vd_xvid.c:72: error: (Each undeclared identifier is reported only once
vd_xvid.c:72: error: for each function it appears in.)
vd_xvid.c:72: error: parse error before "ini"
vd_xvid.c:73: error: `XVID_DEC_PARAM' undeclared (first use in this function)
vd_xvid.c:93: error: `ini' undeclared (first use in this function)
vd_xvid.c:94: error: `dec_p' undeclared (first use in this function)
vd_xvid.c:124: error: `XVID_CSP_RGB24' undeclared (first use in this function)
vd_xvid.c:127: error: `XVID_CSP_RGB32' undeclared (first use in this function)
vd_xvid.c:140: error: `API_VERSION' undeclared (first use in this function)
vd_xvid.c: In function `decode':
vd_xvid.c:190: error: `XVID_DEC_FRAME' undeclared (first use in this function)
vd_xvid.c:190: error: parse error before "dec"
vd_xvid.c:204: error: `dec' undeclared (first use in this function)
Нету в xvid.h таких структур, нету! Чтение доков и google не помогли - брал по инструкции xvid из CVS, та же байда.
Вроде бы есть некий мифический xvid4, но где его брать - непонятно. Как это собрать-то?
Есть! По какойто причине именно c Xvid 1.1 beta2 не собирается MPLAYER
Я собирал сначалас с 0.9 а потом собирал MPLAYER а уже после этого и чам Xvid 1.1beta2
С 1.0.3 у меня та же самая ошибка. Самое забавное, что и в 1.1.0 и в 1.0.3 версиях xvid строка 'XVID_INIT_PARAM' встречается в одном месте - в комментарии :-). Судя по исходникам модуля mplayer, эта структура нужна ему позарез.
я, гм, сам в растерянности - строка XVID_INIT_PARAM в исходниках MPlayer'а всречается только в vd_xvid.c, а в xvid.h - вообще ни разу... Как оно у меня компилится - хз :)
Mplayer has two input/output module for XviD, "xvid" and "xvid4".
For >=1.0 you need xvid4, and usually this is autodetected in configure.
So, in case you didn't, you have to recompile Mplayer.
If configure detects the wrong version, you might have an old xvid-lib
lying around somewhere in your path. The configure scripts looks for a
symbol "xvid_init" in the lib, which is only present in pre-1.0, and for
"xvid_global", which is the one >=1.0 uses.
Все дело было в старой версии libxvidcore.so в /usr/lib.