Bonjour,

J'essaie tant bien que mal de compiler un fichier Makefile dont voici le début:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
FC=g77               # used FORTRAN-compiler
FFLAGS=-O3           # used FORTRAN-Compiler flags
CC=gcc               # used C-compiler
CFLAGS=-O3           # used C-Compiler flags
LD=gcc               # used linker
LFLAGS=-O3           # used linker flags
LIBS=-L. -L./libf2c -lf2c -lm   # used libraries
 
#LIBS=-L. -L./home/saitta/phd/docs/feature/code/source/svm_light/libf2c -lf2c -lm
 
INCLUDE_DIR = -I. -I/home/saitta/jdk1.6.0/include \
	-I/home/saitta/jdk1.6.0/include/linux
 
LD2=ld			#HH
 
#all: svm_learn svm_classify
 
#=================================================================
libsvm.so: jsvm.o svm_learn.o svm_classify.o svm_donlp2_c.o \
	donlp2_c/donlp2.o donlp2_c/dummy.o donlp2_c/donlp2main.o
	$(LD) -z muldefs -shared jsvm.o svm_learn.o \
	svm_classify.o svm_donlp2_c.o donlp2_c/donlp2.o \
	donlp2_c/dummy.o donlp2_c/donlp2main.o libf2c/libf2c.a \
	-o libsvm.so $(LIBS)
 
jsvm.o: jsvm.c
	$(CC) -shared $(INCLUDE_DIR) -c jsvm.c -o jsvm.o
 
donlp2_c/donlp2main.o : donlp2_c/donlp2main.c
	$(CC) -c $(CFLAGS) donlp2_c/donlp2main.c -o \
	donlp2_c/donlp2main.o
#	$(CC) -c $(CFLAGS) donlp2_c/dummy.c -o donlp2_c/dummy.o
 
#=================================================================
J'obtiens le message d'erreur suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
gcc                -c -O3            svm_learn.c -o svm_learn.o
gcc                -c -O3            svm_classify.c -o svm_classify.o
gcc                -c -O3            svm_donlp2_c.c -o svm_donlp2_c.o
gcc                -c -O3            donlp2_c/donlp2.c -o donlp2_c/donlp2.o
gcc                -c -O3            donlp2_c/dummy.c -o donlp2_c/dummy.o
gcc                -c -O3            donlp2_c/donlp2main.c -o \
donlp2_c/donlp2main.o
gcc                -z muldefs -shared jsvm.o svm_learn.o \
svm_classify.o svm_donlp2_c.o donlp2_c/donlp2.o \
donlp2_c/dummy.o donlp2_c/donlp2main.o libf2c/libf2c.a \
-o libsvm.so -L. -L./libf2c -lf2c -lm
/usr/bin/ld: escamotage incompatible ./libf2c/libf2c.a lors de la recherche de -lf2c
/usr/bin/ld: ne peut trouver -lf2c
collect2: ld a retourné 1 code d'état d'exécution
make: *** [libsvm.so] Erreur 1
Merci d'avance de votre aide si vous savez d'où provient le problème.