Je ne peut plus compiler sur mandrake 10.1

Fermé
pristella Messages postés 859 Date d'inscription samedi 23 octobre 2004 Statut Contributeur Dernière intervention 8 mai 2007 - 29 déc. 2004 à 12:48
 Phiphi - 30 déc. 2004 à 00:51
bonjour,
Je n'arrive plus à compiler mes programmes, pourtant gcc 3.41 gcc-cpp et gcc-c++ sont installé. J'ai essayé aussi avec la version gcc 3.3.4 mais rien n'y fait.
Par exemple, si je souhaite installer jpegmmx voici le resultat après avoir fait ./configure et make :

[pristella@localhost jpeg-mmx-0.1.5]$ ./configure
checking for gcc... gcc
checking whether the C compiler (gcc ) works... yes
checking whether the C compiler (gcc ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking how to run the C preprocessor... gcc -E
checking for function prototypes... yes
checking for stddef.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for size_t... yes
checking for type unsigned char... yes
checking for type unsigned short... yes
checking for type void... yes
checking for working const... yes
checking for inline... __inline__
checking for broken incomplete types... ok
checking for short external names... ok
checking to see if char is signed... yes
checking to see if right shift is signed... yes
checking to see if fopen accepts b spec... yes
checking for a BSD compatible install... /usr/bin/install -c
checking for ranlib... ranlib
checking libjpeg version number... 62
creating ./config.status
creating Makefile
creating jconfig.h
jconfig.h is unchanged
[nicolas@localhost jpeg-mmx-0.1.5]$


et make (les dernières lignes) :

[pristella@localhost jpeg-mmx-0.1.5]$ make

undefined reference to `const_0x0808'
libjpeg-mmx.a(jidctint.o)(.text+0x1a79): In function `jpeg_idct_islow':
: undefined reference to `const_0x0808'
libjpeg-mmx.a(jidctint.o)(.text+0x1a80): In function `jpeg_idct_islow':
: undefined reference to `const_0x0808'
libjpeg-mmx.a(jidctint.o)(.text+0x1a9a): In function `jpeg_idct_islow':
: undefined reference to `const_0x0808'
libjpeg-mmx.a(jidctint.o)(.text+0x1aa4): more undefined references to `const_0x0808' follow
libjpeg-mmx.a(jdcolor.o)(.text+0x171): In function `ycc_rgb_convert_mmx':
: undefined reference to `te0'
libjpeg-mmx.a(jdcolor.o)(.text+0x178): In function `ycc_rgb_convert_mmx':
: undefined reference to `te0'
libjpeg-mmx.a(jdcolor.o)(.text+0x193): In function `ycc_rgb_convert_mmx':
: undefined reference to `te1'
libjpeg-mmx.a(jdcolor.o)(.text+0x19a): In function `ycc_rgb_convert_mmx':
: undefined reference to `te2'
libjpeg-mmx.a(jdcolor.o)(.text+0x1ed): In function `ycc_rgb_convert_mmx':
: undefined reference to `te1'
libjpeg-mmx.a(jdcolor.o)(.text+0x1f4): In function `ycc_rgb_convert_mmx':
: undefined reference to `te2'
collect2: ld returned 1 exit status
make: *** [djpeg] Erreur 1
[pristella@localhost jpeg-mmx-0.1.5]$

J'ai essayé en tant que root, mais ça change rien. Et c'est pareil pour d'autres programmes!!

Lorsque que j'etait sous community et que je migrais sur 10.1 officiel avec urpmi, ça marchait bien mais depuis que j'ai installé la version download (DVD), je ne peux plus compiler sans erreurs.

merci d'avance pour votre aide

3 réponses

pristella Messages postés 859 Date d'inscription samedi 23 octobre 2004 Statut Contributeur Dernière intervention 8 mai 2007 74
29 déc. 2004 à 19:43
personne n'a de solutions ????
bon! ben j'ai plus qu'a reinstaller la version community qui marchait bien

A+
0
ouh la!! attends avant de reinstaller ton os !! (sale habitude windowsienne ;-) )

je n'ai pas vraiment de solution pour toi, mais a mon avis ton erreur

undefined reference to `const_0x0808'
libjpeg-mmx.a(jidctint.o)(.text+0x1a79): In function `jpeg_idct_islow':

(qui est la "premiere" du make que tu nous donne") est deja un probleme : la vraie ligne d'erreur doit se situer plus haut je pense...

essaie de trouver la limite entre "tout se passe bien" puis celle ou ca commence a merder dans ta compilation...

une fois que tu as cette premiere ligne, un copié-collé dans google s'impose, tu y trouveras peut etre ton bonheur, sinon, reposte ici!

Phiphi
0
pristella Messages postés 859 Date d'inscription samedi 23 octobre 2004 Statut Contributeur Dernière intervention 8 mai 2007 74
29 déc. 2004 à 23:03
voilà le début de make :

[root@localhost jpeg-mmx-0.1.5]# make
nasm -f elf -o fdct_mmx.o fdct_mmx.s
nasm -f elf -o quant_mmx.o quant_mmx.s
gcc -O2 -I. -c -o fdctdata.o fdctdata.c
gcc -O2 -I. -c -o jquant_x86simd.o jquant_x86simd.c
gcc -O2 -I. -c -o cpu_accel.o cpu_accel.c
gcc -O2 -I. -c -o jdapimin.o jdapimin.c
gcc -O2 -I. -c -o jdapistd.o jdapistd.c
gcc -O2 -I. -c -o jdtrans.o jdtrans.c
gcc -O2 -I. -c -o jdatasrc.o jdatasrc.c
gcc -O2 -I. -c -o jdmaster.o jdmaster.c
gcc -O2 -I. -c -o jdinput.o jdinput.c
gcc -O2 -I. -c -o jdmarker.o jdmarker.c
gcc -O2 -I. -c -o jdhuff.o jdhuff.c
gcc -O2 -I. -c -o jdphuff.o jdphuff.c
gcc -O2 -I. -c -o jdmainct.o jdmainct.c
gcc -O2 -I. -c -o jdcoefct.o jdcoefct.c
gcc -O2 -I. -c -o jdpostct.o jdpostct.c
gcc -O2 -I. -c -o jddctmgr.o jddctmgr.c
gcc -O2 -I. -c -o jidctfst.o jidctfst.c
jidctfst.c:400: warning: integer constant is too large for "long" type
jidctfst.c:401: warning: integer constant is too large for "long" type
jidctfst.c:402: warning: integer constant is too large for "long" type
jidctfst.c:403: warning: integer constant is too large for "long" type
jidctfst.c:404: warning: integer constant is too large for "long" type
jidctfst.c:405: warning: integer constant is too large for "long" type
gcc -O2 -I. -c -o jidctflt.o jidctflt.c
gcc -O2 -I. -c -o jidctint.o jidctint.c
jidctint.c:176: warning: integer constant is too large for "long" type
jidctint.c:177: warning: integer constant is too large for "long" type
jidctint.c:178: warning: integer constant is too large for "long" type
jidctint.c:179: warning: integer constant is too large for "long" type
jidctint.c:180: warning: integer constant is too large for "long" type
jidctint.c:181: warning: integer constant is too large for "long" type
jidctint.c:182: warning: integer constant is too large for "long" type
jidctint.c:183: warning: integer constant is too large for "long" type
jidctint.c:184: warning: integer constant is too large for "long" type
jidctint.c:185: warning: integer constant is too large for "long" type
jidctint.c:186: warning: integer constant is too large for "long" type
jidctint.c:188: warning: integer constant is too large for "long" type
jidctint.c:189: warning: integer constant is too large for "long" type
jidctint.c:190: warning: integer constant is too large for "long" type
jidctint.c:191: warning: integer constant is too large for "long" type
jidctint.c:192: warning: integer constant is too large for "long" type
jidctint.c:193: warning: integer constant is too large for "long" type
jidctint.c:194: warning: integer constant is too large for "long" type
jidctint.c:195: warning: integer constant is too large for "long" type
jidctint.c:196: warning: integer constant is too large for "long" type
jidctint.c:197: warning: integer constant is too large for "long" type
jidctint.c:198: warning: integer constant is too large for "long" type
jidctint.c:200: warning: integer constant is too large for "long" type
jidctint.c:201: warning: integer constant is too large for "long" type
gcc -O2 -I. -c -o jidctred.o jidctred.c
gcc -O2 -I. -c -o jdsample.o jdsample.c
jdsample.c:308: warning: integer constant is too large for "long" type
jdsample.c:308: warning: integer constant is too large for "long" type
jdsample.c:309: warning: integer constant is too large for "long" type
jdsample.c:309: warning: integer constant is too large for "long" type
jdsample.c:310: warning: integer constant is too large for "long" type
jdsample.c:310: warning: integer constant is too large for "long" type
jdsample.c:311: warning: integer constant is too large for "long" type
jdsample.c:311: warning: integer constant is too large for "long" type
jdsample.c:312: warning: integer constant is too large for "long" type
gcc -O2 -I. -c -o jdcolor.o jdcolor.c
jdcolor.c:132: warning: integer constant is too large for "long" type
jdcolor.c:133: warning: integer constant is too large for "long" type
jdcolor.c:134: warning: integer constant is too large for "long" type
gcc -O2 -I. -c -o jquant1.o jquant1.c
gcc -O2 -I. -c -o jquant2.o jquant2.c
gcc -O2 -I. -c -o jdmerge.o jdmerge.c
jdmerge.c:43: warning: integer constant is too large for "long" type
jdmerge.c:44: warning: integer constant is too large for "long" type
jdmerge.c:45: warning: integer constant is too large for "long" type
jdmerge.c:46: warning: integer constant is too large for "long" type
jdmerge.c:50: warning: integer constant is too large for "long" type
jdmerge.c:51: warning: integer constant is too large for "long" type
jdmerge.c:53: warning: integer constant is too large for "long" type
jdmerge.c:56: warning: integer constant is too large for "long" type
jdmerge.c:58: warning: integer constant is too large for "long" type
gcc -O2 -I. -c -o jcomapi.o jcomapi.c
gcc -O2 -I. -c -o jutils.o jutils.c
gcc -O2 -I. -c -o jerror.o jerror.c
gcc -O2 -I. -c -o jmemmgr.o jmemmgr.c
gcc -O2 -I. -c -o jmemnobs.o jmemnobs.c

j'espère que ça donnera quelques éléments intéressants.

A+
0
Salut,

encore une fois, je ne suis pas un pro du debuggage et de la programmation, mais il me semble que les "warning" ne sont pas genant a la compilation (enfin, c mieux quand ils sont pas là, mais bon)

A mon avis le plantage se situe entre les deux parties que tu nous donne, s'il y en a une ;-), sinon, là je peux vraiment plus rien pour toi :-(

oublie les "warning", cherche la premiere ligne avec un "undefined reference blablabla", et regarde un peu au dessus si ca plante...
dsl de pas etre bcp plus précis, mais je n'ai jamais eu le probleme... il doit te manquer certains fichiers de conf, ou un compilateur, ou des librairies, une connerie comme ca...

bon courage, n'oublie pas google (un petit copier coller d'une de tes ligne de plantage peut t'aider plus que tu ne le crois ;-) )

Phiphi
0