[Résolu]Echec Installation Pymedia

fred1599
[Résolu]Echec Installation Pymedia

Bonjour,

J'ai un autre problème à soumettre et existant depuis un long moment.

Je voudrais utiliser le module pymedia, pour cela je télécharge sur le site officiel la version 1.3.7.5 ou la version 1.3.7.3.

Le soucis se trouve lors de la compilation :

error: command 'gcc' failed with exit status 1

Pas moyen de résoudre le problème quelquesoit la version

J'ai pourtant tout ce qu'il faut

Quote:
OGG : found
VORBIS : found
FAAD : found
MP3LAME : found
VORBISENC : found
ALSA : found

Voici ce que me dis le programme avant l'erreur :

Quote:
running install
running build
running build_py
creating build
creating build/lib.linux-i686-2.5
creating build/lib.linux-i686-2.5/pymedia
copying inst_lib/player.py -> build/lib.linux-i686-2.5/pymedia
copying inst_lib/__init__.py -> build/lib.linux-i686-2.5/pymedia
copying inst_lib/meta.py -> build/lib.linux-i686-2.5/pymedia
creating build/lib.linux-i686-2.5/pymedia/audio
copying inst_lib/audio/__init__.py -> build/lib.linux-i686-2.5/pymedia/audio
creating build/lib.linux-i686-2.5/pymedia/video
copying inst_lib/video/__init__.py -> build/lib.linux-i686-2.5/pymedia/video
creating build/lib.linux-i686-2.5/pymedia/video/ext_codecs
copying inst_lib/video/ext_codecs/__init__.py -> build/lib.linux-i686-2.5/pymedia/video/ext_codecs
creating build/lib.linux-i686-2.5/pymedia/removable
copying inst_lib/removable/__init__.py -> build/lib.linux-i686-2.5/pymedia/removable
running build_ext
building 'pymedia.audio.sound' extension
creating build/temp.linux-i686-2.5
creating build/temp.linux-i686-2.5/sound
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -DBUILD_NUM=1862 -DPATH_DEV_DSP="/dev/dsp" -DPATH_DEV_MIXER="/dev/mixer" -D_FILE_OFFSET_BITS=64 -DACCEL_DETECT=1 -DHAVE_MMX=1 -DHAVE_LINUX_DVD_STRUCT=1 -DDVD_STRUCT_IN_LINUX_CDROM_H=1 -DCONFIG_VORBIS -DCONFIG_VORBIS -DCONFIG_FAAD -DCONFIG_MP3LAME -DCONFIG_VORBIS -DCONFIG_ALSA -DHAVE_AV_CONFIG_H -DUDF_CACHE=1 -INone -INone -INone -I/usr/include/lame -INone -INone -I/home/fred1599/Bureau/pymedia-1.3.7.3 -Isound/ -I/usr/include/python2.5 -c sound/sound.cpp -o build/temp.linux-i686-2.5/sound/sound.o
cc1plus: attention : l'option de la ligne de commande "-Wstrict-prototypes" est valide pour Ada/C/ObjC mais pas pour C++
In file included from sound/sound.cpp:31:
sound/audio_alsa.h: In member function «int OSoundStream::Init(int, int, int, int)»:
sound/audio_alsa.h:322: attention : deprecated conversion from string constant to «char*»
sound/audio_alsa.h:324: attention : unused variable «val»
sound/audio_alsa.h: In member function «int ISoundStream::Init(int, int, int)»:
sound/audio_alsa.h:666: attention : deprecated conversion from string constant to «char*»
sound/audio_alsa.h: In constructor «Mixer::Mixer(int)»:
sound/audio_alsa.h:1033: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp: At global scope:
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:791: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:798: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp:798: attention : deprecated conversion from string constant to «char*»
sound/sound.cpp: In function «void initsound()»:
sound/sound.cpp:1451: attention : deprecated conversion from string constant to «char*»
sound/audio_alsa.h: In member function «int OSoundStream::Init(int, int, int, int)»:
sound/audio_alsa.h:408: attention : «frames» is used uninitialized in this function
sound/audio_alsa.h: At global scope:
sound/audio_alsa.h:112: attention : «snd_mixer_elem_t* alsamixer_find_elem(snd_mixer_t*, char*, int)» defined but not used
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -DBUILD_NUM=1862 -DPATH_DEV_DSP="/dev/dsp" -DPATH_DEV_MIXER="/dev/mixer" -D_FILE_OFFSET_BITS=64 -DACCEL_DETECT=1 -DHAVE_MMX=1 -DHAVE_LINUX_DVD_STRUCT=1 -DDVD_STRUCT_IN_LINUX_CDROM_H=1 -DCONFIG_VORBIS -DCONFIG_VORBIS -DCONFIG_FAAD -DCONFIG_MP3LAME -DCONFIG_VORBIS -DCONFIG_ALSA -DHAVE_AV_CONFIG_H -DUDF_CACHE=1 -INone -INone -INone -I/usr/include/lame -INone -INone -I/home/fred1599/Bureau/pymedia-1.3.7.3 -Isound/ -I/usr/include/python2.5 -c sound/resample.c -o build/temp.linux-i686-2.5/sound/resample.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -DBUILD_NUM=1862 -DPATH_DEV_DSP="/dev/dsp" -DPATH_DEV_MIXER="/dev/mixer" -D_FILE_OFFSET_BITS=64 -DACCEL_DETECT=1 -DHAVE_MMX=1 -DHAVE_LINUX_DVD_STRUCT=1 -DDVD_STRUCT_IN_LINUX_CDROM_H=1 -DCONFIG_VORBIS -DCONFIG_VORBIS -DCONFIG_FAAD -DCONFIG_MP3LAME -DCONFIG_VORBIS -DCONFIG_ALSA -DHAVE_AV_CONFIG_H -DUDF_CACHE=1 -INone -INone -INone -I/usr/include/lame -INone -INone -I/home/fred1599/Bureau/pymedia-1.3.7.3 -Isound/ -I/usr/include/python2.5 -c sound/fft.cpp -o build/temp.linux-i686-2.5/sound/fft.o
cc1plus: attention : l'option de la ligne de commande "-Wstrict-prototypes" est valide pour Ada/C/ObjC mais pas pour C++
g++ -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions build/temp.linux-i686-2.5/sound/sound.o build/temp.linux-i686-2.5/sound/resample.o build/temp.linux-i686-2.5/sound/fft.o -logg -lvorbis -lfaad -lmp3lame -lvorbisenc -lasound -o build/lib.linux-i686-2.5/pymedia/audio/sound.so
building 'pymedia.audio.acodec' extension
creating build/temp.linux-i686-2.5/audio
creating build/temp.linux-i686-2.5/audio/acodec
creating build/temp.linux-i686-2.5/audio/libavcodec
creating build/temp.linux-i686-2.5/audio/libavcodec/liba52
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -DBUILD_NUM=1862 -DPATH_DEV_DSP="/dev/dsp" -DPATH_DEV_MIXER="/dev/mixer" -D_FILE_OFFSET_BITS=64 -DACCEL_DETECT=1 -DHAVE_MMX=1 -DHAVE_LINUX_DVD_STRUCT=1 -DDVD_STRUCT_IN_LINUX_CDROM_H=1 -DCONFIG_VORBIS -DCONFIG_VORBIS -DCONFIG_FAAD -DCONFIG_MP3LAME -DCONFIG_VORBIS -DCONFIG_ALSA -DHAVE_AV_CONFIG_H -DUDF_CACHE=1 -INone -INone -INone -I/usr/include/lame -INone -INone -I/home/fred1599/Bureau/pymedia-1.3.7.3 -Iaudio/ -I/usr/include/python2.5 -c audio/acodec/acodec.c -o build/temp.linux-i686-2.5/audio/acodec/acodec.o
In file included from audio/acodec/acodec.c:31:
audio/libavcodec/dsputil.h:485: erreur: static declaration of «lrintf» follows non-static declaration
audio/acodec/acodec.c:249: attention : initialization from incompatible pointer type
audio/acodec/acodec.c: Dans la fonction «ACodec_Encode» :
audio/acodec/acodec.c:668: attention : pointer targets in passing argument 2 of «avcodec_encode_audio» differ in signedness
error: command 'gcc' failed with exit status 1

Merci par avance pour vos lumières, ça fait un moment que j'avais abandonné, mais maintenant je me dis que grâce à vous je vais peut-être enfin trouvé :D

fredericmazue

Le problème est plus exactement là:

Quote:
audio/libavcodec/dsputil.h:485: erreur: static declaration of «lrintf» follows non-static declaration

Faudrait voir le contenu de ce fichier aux alentours de la ligne 485. Peut être y-t-il une déclaration dans un vieux style dont le compilateur ne veut plus.
Si c'est le cas, il faudra modifier dsputil.h pour que ce compile, ou soumettre le problème aux développeurs du trucs. Si ça se trouve c'est une FAQ ça.

fred1599

Quote:
Faudrait voir le contenu de ce fichier aux alentours de la ligne 485. Peut être y-t-il une déclaration dans un vieux style dont le compilateur ne veut plus.
Si c'est le cas, il faudra modifier dsputil.h pour que ce compile, ou soumettre le problème aux développeurs du trucs. Si ça se trouve c'est une FAQ ça.

En fait ce n'est pas un problème au niveau de ce fichier, je suis parti me reposer un peu en week et m'y suis remis.

J'ai trouvé la solution, elle est LA

Quote:
I just tried to build pymedia on my Ubuntu system with gcc4.2 & python2.5 and encountered the same error.

I made one change and have successfully compiled, installed and imported pymedia (I haven't used it yet, but I don't expect this change to affect that).

In on line 31 insert the following:

Code:
#define HAVE_LRINTF

So you should have:

Code:
#include
#define HAVE_LRINTF
#include "libavcodec/dsputil.h"
#include "version.h"

Note that it must be before including

Merci, tu m'as donné la puce à l'oreille :wink:

A bienôt :D

fredericmazue

Quote:
En fait ce n'est pas un problème au niveau de ce fichier

Ben si...
Si tu regardes dans le fichier tu vas sans doute voir que si et même voir pourquoi.

Mais bon, l'important est que ton problème soit résolu :)

fred1599

Quote:
Si tu regardes dans le fichier tu vas sans doute voir que si et même voir pourquoi.

Oui je comprend ce que tu veux dire, le rapport était là et l'essentiel comme tu dis c'est que se soit résolu, je t'en remercie

:D