Voila, je dois utiliser une librairie d'une caméra, et j'ai un dernier probleme de linkage dans mon affaire pour l'utiliser (enfin,j'espere que c'est le dernier^^).
Tout d'abord, mon makefile :
J'utilise les fichiers svs44b qu'on m'a donné a inclure pour mon projet.
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50 CC=g++ EXEC=main EXTRAINCLUDEPATH=-I/usr/local/Aria/include/ -I/usr/local/include/opencv -I/usr/local/include/ltilib-1.9.15 EXTRALIBPATH=-L/usr/local/Aria/lib/ -L/usr/local/lib -L/usr/local/lib/ltilib-1.9.15 EXTRALIBS= -lAria -lArNetworking -lArAKin -lcv -lcxcore -lhighgui -lltid -lltir EXPATH=/home/chris/ltilib/src all : $(EXEC) main : ArmUse.o Capture.o Interface.o MatrixCompute.o Robot.o Thread.o main.o @$(CC) ArmUse.o Capture.o Interface.o MatrixCompute.o Robot.o Thread.o main.o -o main $(EXTRALIBS) $(EXTRALIBPATH) `pkg-config gtkmm-2.4 --libs` ArmUse.o: ArmUse.cpp ArmUse.h @$(CC) ArmUse.cpp -c `pkg-config gtkmm-2.4 --cflags` $(EXTRAINCLUDEPATH) flwin.o: flwin.cpp flwin.h @$(CC) flwin.cpp -c `pkg-config --cflags` $(EXTRAINCLUDEPATH) @echo "flwin... OK" Capture.o: Capture.cpp Capture.h Thread.h @$(CC) Capture.cpp -c `pkg-config --cflags svs44b` $(EXTRAINCLUDEPATH) @echo "Capture... OK" Interface.o: Interface.cpp ArmUse.h Capture.h MatrixCompute.h Robot.h @$(CC) Interface.cpp -c `pkg-config gtkmm-2.4 --cflags` $(EXTRAINCLUDEPATH) @echo "Interface... OK" MatrixCompute.o: MatrixCompute.cpp @$(CC) MatrixCompute.cpp -c `pkg-config gtkmm-2.4 --cflags` $(EXTRAINCLUDEPATH) @echo "MatrixCompute... OK" Robot.o: Robot.cpp @$(CC) Robot.cpp -c `pkg-config gtkmm-2.4 --cflags` $(EXTRAINCLUDEPATH) @echo "Robot... OK" Thread.o: Thread.cpp @$(CC) Thread.cpp -c `pkg-config gtkmm-2.4 --cflags` $(EXTRAINCLUDEPATH) @echo "Thread... OK" main.o: main.cpp Interface.h @$(CC) main.cpp -c `pkg-config gtkmm-2.4 --cflags` $(EXTRAINCLUDEPATH) clean: @echo "Removing *.o files and *.jpeg files..." @rm -rf *.o @rm -rf ./main @rm -rf *.jpeg @echo "Ready."
or avec tout ca, la console me sort ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 prefix=SUBST_PREFIX exec_prefix=${prefix} libdir=${prefix}/lib includedir=${prefix}/include Name: svs44b Version: 1 Description: svs44b Cflags: -DUNIX -DLINUX -D_REENTRANT -I. -I${prefix}/include Libs: -L${prefix}/lib -lfltk -lsvs -lsvscap -ldcap -lstdc++ -lpthread -lm -lc
si je rajoute la ligne suivante dans mes extraincludepath :
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80 massin@outil03:~/TestInterface$ make Capture... OK In file included from Interface.h:19, from Interface.cpp:1: Capture.h:25:22: error: svsclass.h: No such file or directory In file included from Capture.h:26, from Interface.h:19, from Interface.cpp:1: flwin.h:11:19: error: FL/Fl.H: No such file or directory flwin.h:12:25: error: FL/Fl_Group.H: No such file or directory flwin.h:13:26: error: FL/Fl_Window.H: No such file or directory flwin.h:14:24: error: FL/fl_draw.H: No such file or directory flwin.h:15:33: error: FL/Fl_Double_Window.H: No such file or directory flwin.h:16:27: error: FL/Fl_Browser.H: No such file or directory flwin.h:17:34: error: FL/Fl_Overlay_Window.H: No such file or directory flwin.h:18:34: error: FL/Fl_Select_Browser.H: No such file or directory flwin.h:19:32: error: FL/Fl_Text_Display.H: No such file or directory flwin.h:20:31: error: FL/Fl_Text_Buffer.H: No such file or directory flwin.h:21:28: error: FL/Fl_Menu_Bar.H: No such file or directory flwin.h:22:32: error: FL/Fl_File_Chooser.H: No such file or directory flwin.h:30: error: expected class-name before { token flwin.h:32: error: IMPORT does not name a type flwin.h:33: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:33: error: expected ; before void flwin.h:34: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:34: error: expected ; before void flwin.h:35: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:35: error: expected ; before void flwin.h:36: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:36: error: expected ; before void flwin.h:51: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:51: error: expected ; before void flwin.h:52: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:52: error: expected ; before void flwin.h:63: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:63: error: expected ; before int flwin.h:64: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:64: error: expected ; before int flwin.h:65: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:65: error: expected ; before int flwin.h:66: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:66: error: expected ; before int flwin.h:82: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:82: error: expected ; before int flwin.h:87: error: svsImageParams does not name a type flwin.h:120: error: expected class-name before { token flwin.h:127: error: Fl_Color has not been declared flwin.h:138: error: Fl_Color does not name a type flwin.h: In member function void Fl_Value::setcolor(int): flwin.h:127: error: c was not declared in this scope flwin.h: In member function void Fl_Value::draw(): flwin.h:132: error: color was not declared in this scope flwin.h:132: error: fl_color was not declared in this scope flwin.h:133: error: x was not declared in this scope flwin.h:133: error: y was not declared in this scope flwin.h:133: error: w was not declared in this scope flwin.h:133: error: h was not declared in this scope flwin.h:133: error: fl_rectf was not declared in this scope flwin.h:134: error: FL_HELVETICA_BOLD was not declared in this scope flwin.h:134: error: labelsize was not declared in this scope flwin.h:134: error: fl_font was not declared in this scope flwin.h:135: error: c was not declared in this scope flwin.h:136: error: fl_height was not declared in this scope flwin.h:136: error: fl_descent was not declared in this scope flwin.h:136: error: fl_draw was not declared in this scope flwin.h: At global scope: flwin.h:145: error: expected class-name before { token flwin.h:147: error: IMPORT does not name a type flwin.h:148: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:148: error: expected ; before void flwin.h:149: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:149: error: expected ; before void flwin.h:150: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:150: error: expected ; before bool flwin.h:151: error: ISO C++ forbids declaration of Fl_Text_Display with no type flwin.h:151: error: expected ; before * token flwin.h:152: error: ISO C++ forbids declaration of Fl_Text_Buffer with no type flwin.h:152: error: expected ; before * token flwin.h:157: error: expected constructor, destructor, or type conversion before int make: *** [Interface.o] Error 1
-I/usr/local/FL
j'obtients:donc voila, en gros, si j'ai bien comprit, c'est parce qu'il ne trouve pas les librairies associés qu'il y a un probleme, mais je ne comprends pas comment lié la librairie a flwin, car celle ci déconne.
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166 In file included from Interface.h:19, from Interface.cpp:1: Capture.h:25:22: error: svsclass.h: No such file or directory In file included from Capture.h:26, from Interface.h:19, from Interface.cpp:1: flwin.h:11:19: error: FL/Fl.H: No such file or directory flwin.h:12:25: error: FL/Fl_Group.H: No such file or directory flwin.h:13:26: error: FL/Fl_Window.H: No such file or directory flwin.h:14:24: error: FL/fl_draw.H: No such file or directory flwin.h:15:33: error: FL/Fl_Double_Window.H: No such file or directory flwin.h:16:27: error: FL/Fl_Browser.H: No such file or directory flwin.h:17:34: error: FL/Fl_Overlay_Window.H: No such file or directory flwin.h:18:34: error: FL/Fl_Select_Browser.H: No such file or directory flwin.h:19:32: error: FL/Fl_Text_Display.H: No such file or directory flwin.h:20:31: error: FL/Fl_Text_Buffer.H: No such file or directory flwin.h:21:28: error: FL/Fl_Menu_Bar.H: No such file or directory flwin.h:22:32: error: FL/Fl_File_Chooser.H: No such file or directory /usr/local/Aria/include/ariaUtil.h: In static member function static double ArMath::cos(double): /usr/local/Aria/include/ariaUtil.h:376: error: ::cos has not been declared /usr/local/Aria/include/ariaUtil.h: In static member function static double ArMath::sin(double): /usr/local/Aria/include/ariaUtil.h:384: error: ::sin has not been declared /usr/local/Aria/include/ariaUtil.h: In static member function static double ArMath::tan(double): /usr/local/Aria/include/ariaUtil.h:391: error: ::tan has not been declared /usr/local/Aria/include/ariaUtil.h: In static member function static double ArMath::atan2(double, double): /usr/local/Aria/include/ariaUtil.h:400: error: ::atan2 has not been declared /usr/local/Aria/include/ariaUtil.h: In static member function static int ArMath::roundInt(double): /usr/local/Aria/include/ariaUtil.h:442: error: floor was not declared in this scope /usr/local/Aria/include/ariaUtil.h: In static member function static short int ArMath::roundShort(double): /usr/local/Aria/include/ariaUtil.h:459: error: floor was not declared in this scope /usr/local/Aria/include/ariaUtil.h: In static member function static double ArMath::distanceBetween(double, double, double, double): /usr/local/Aria/include/ariaUtil.h:493: error: sqrt was not declared in this scope /usr/local/Aria/include/ariaUtil.h: In static member function static double ArMath::log2(double): /usr/local/Aria/include/ariaUtil.h:513: error: log10 was not declared in this scope /usr/local/Aria/include/ariaUtil.h: In member function virtual double ArPose::findAngleTo(ArPose) const: /usr/local/Aria/include/ariaUtil.h:632: error: atan2 was not declared in this scope /usr/local/Aria/include/ariaUtil.h: In member function bool ArLine::intersects(const ArLine*, ArPose*): /usr/local/Aria/include/ariaUtil.h:920: error: fabs was not declared in this scope /usr/local/Aria/include/ArConfigArg.h: At global scope: /usr/local/Aria/include/ArConfigArg.h:94: error: HUGE_VAL was not declared in this scope /usr/local/Aria/include/ArConfigArg.h:95: error: HUGE_VAL was not declared in this scope /usr/local/Aria/include/ArConfigArg.h:111: error: HUGE_VAL was not declared in this scope /usr/local/Aria/include/ArConfigArg.h:112: error: HUGE_VAL was not declared in this scope /usr/local/Aria/include/ArArg.h:76: error: HUGE_VAL was not declared in this scope /usr/local/Aria/include/ArArg.h:77: error: HUGE_VAL was not declared in this scope /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:100: error: ::acos has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:117: error: ::asin has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:132: error: ::atan has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:147: error: ::atan2 has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:163: error: ::ceil has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:178: error: ::cos has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:193: error: ::cosh has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:208: error: ::exp has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:223: error: ::fabs has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:238: error: ::floor has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:253: error: ::fmod has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:263: error: ::frexp has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:278: error: ::ldexp has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:293: error: ::log has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:308: error: ::log10 has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:323: error: ::modf has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:342: error: ::pow has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:364: error: ::sin has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:379: error: ::sinh has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:394: error: ::sqrt has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:409: error: ::tan has not been declared /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:424: error: ::tanh has not been declared /usr/local/include/ltilib-1.9.15/ltiSinCos.h: In function void lti::sincos_impl(double, double&, double&): /usr/local/include/ltilib-1.9.15/ltiSinCos.h:62: error: ::sincos has not been declared /usr/local/include/ltilib-1.9.15/ltiSinCos.h: In function void lti::sincosf_impl(float, float&, float&): /usr/local/include/ltilib-1.9.15/ltiSinCos.h:70: error: ::sincosf has not been declared /usr/local/include/ltilib-1.9.15/ltiMath.h: At global scope: /usr/local/include/ltilib-1.9.15/ltiMath.h:357: error: log was not declared in this scope /usr/local/include/ltilib-1.9.15/ltiMath.h:364: error: tan was not declared in this scope /usr/local/include/ltilib-1.9.15/ltiMath.h: In function int lti::sqrt(int): /usr/local/include/ltilib-1.9.15/ltiMath.h:562: error: ::sqrt has not been declared /usr/local/include/ltilib-1.9.15/ltiMath.h: In function unsigned int lti::sqrt(unsigned int): /usr/local/include/ltilib-1.9.15/ltiMath.h:571: error: ::sqrt has not been declared /usr/local/include/ltilib-1.9.15/ltiMath.h: In function double lti::sqrt(const double&): /usr/local/include/ltilib-1.9.15/ltiMath.h:602: error: call of overloaded sqrt(const double&) is ambiguous /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:397: note: candidates are: float std::sqrt(float) /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:401: note: long double std::sqrt(long double) /usr/local/include/ltilib-1.9.15/ltiMath.h: In function double lti::sigmoid(const double&): /usr/local/include/ltilib-1.9.15/ltiMath.h:994: error: call of overloaded exp(double) is ambiguous /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:215: note: candidates are: long double std::exp(long double) /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:211: note: float std::exp(float) /usr/local/include/ltilib-1.9.15/ltiMath.h: In function double lti::sigmoid(int): /usr/local/include/ltilib-1.9.15/ltiMath.h:1003: error: call of overloaded exp(double) is ambiguous /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:215: note: candidates are: long double std::exp(long double) /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:211: note: float std::exp(float) /usr/local/include/ltilib-1.9.15/ltiMath_template.h: In function T lti::lnGamma(const T&): /usr/local/include/ltilib-1.9.15/ltiMath_template.h:54: error: call of overloaded log(double&) is ambiguous /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:300: note: candidates are: long double std::log(long double) /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:296: note: float std::log(float) /usr/local/include/ltilib-1.9.15/ltiMath_template.h:60: error: call of overloaded log(double&) is ambiguous /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:300: note: candidates are: long double std::log(long double) /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:296: note: float std::log(float) /usr/local/include/ltilib-1.9.15/ltiMath_template.h: In function T lti::betai(const T&, const T&, const T&): /usr/local/include/ltilib-1.9.15/ltiMath_template.h:80: error: call of overloaded log(const double&) is ambiguous /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:300: note: candidates are: long double std::log(long double) /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:296: note: float std::log(float) /usr/local/include/ltilib-1.9.15/ltiMath_template.h:80: error: call of overloaded log(double&) is ambiguous /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:300: note: candidates are: long double std::log(long double) /usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/cmath:296: note: float std::log(float) flwin.h: At global scope: flwin.h:30: error: expected class-name before { token flwin.h:32: error: IMPORT does not name a type flwin.h:33: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:33: error: expected ; before void flwin.h:34: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:34: error: expected ; before void flwin.h:35: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:35: error: expected ; before void flwin.h:36: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:36: error: expected ; before void flwin.h:51: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:51: error: expected ; before void flwin.h:52: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:52: error: expected ; before void flwin.h:63: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:63: error: expected ; before int flwin.h:64: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:64: error: expected ; before int flwin.h:65: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:65: error: expected ; before int flwin.h:66: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:66: error: expected ; before int flwin.h:82: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:82: error: expected ; before int flwin.h:87: error: svsImageParams does not name a type flwin.h:120: error: expected class-name before { token flwin.h:127: error: Fl_Color has not been declared flwin.h:138: error: Fl_Color does not name a type flwin.h: In member function void Fl_Value::setcolor(int): flwin.h:127: error: c was not declared in this scope flwin.h: In member function void Fl_Value::draw(): flwin.h:132: error: color was not declared in this scope flwin.h:132: error: fl_color was not declared in this scope flwin.h:133: error: x was not declared in this scope flwin.h:133: error: y was not declared in this scope flwin.h:133: error: w was not declared in this scope flwin.h:133: error: h was not declared in this scope flwin.h:133: error: fl_rectf was not declared in this scope flwin.h:134: error: FL_HELVETICA_BOLD was not declared in this scope flwin.h:134: error: labelsize was not declared in this scope flwin.h:134: error: fl_font was not declared in this scope flwin.h:135: error: c was not declared in this scope flwin.h:136: error: fl_height was not declared in this scope flwin.h:136: error: fl_descent was not declared in this scope flwin.h:136: error: fl_draw was not declared in this scope flwin.h: At global scope: flwin.h:145: error: expected class-name before { token flwin.h:147: error: IMPORT does not name a type flwin.h:148: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:148: error: expected ; before void flwin.h:149: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:149: error: expected ; before void flwin.h:150: error: ISO C++ forbids declaration of IMPORT with no type flwin.h:150: error: expected ; before bool flwin.h:151: error: ISO C++ forbids declaration of Fl_Text_Display with no type flwin.h:151: error: expected ; before * token flwin.h:152: error: ISO C++ forbids declaration of Fl_Text_Buffer with no type flwin.h:152: error: expected ; before * token flwin.h:157: error: expected constructor, destructor, or type conversion before int make: *** [Interface.o] Error 1
Merci de votre aide
Partager