Hej gruppe,
vi har fået et kæmpe problem med noget C++ kode som bare ikke vil virke
som det skal.
Koden kan ses på
www.mip.sdu.dk/~soren/robp01.tar.gz... (bliv ikke
skræmt af filstørrelse) - der er både billedbehandlingslibrary m.v. i også.
Kræver dog OpenGL for at compile.
Når der compiles med gcc fremkommer fejlen:
-----
then mv -f ".deps/Scene.Tpo" ".deps/Scene.Plo"; else rm -f
".deps/Scene.Tpo"; exit 1; fi
g++ -DHAVE_CONFIG_H -I. -I. -I../../src -g -O2 -MT Scene.lo -MD -MP
-MF .deps/Scene.Tpo -c Scene.cpp -o Scene.o
Scene.cpp:124: error: prototype for `void
Graphics::Scene::captureImage(ipl::CImage*)' does not match any in
class `
Graphics::Scene'
Scene.h:26: error: candidate is: void
Graphics::Scene::captureImage(ipl::CImage*, Graphics::Scene&)
Scene.cpp: In member function `void
Graphics::Scene::captureImage(ipl::CImage*)
':
Scene.cpp:125: error: no matching function for call to `Graphics::Camera::
captureImage(ipl::CImage*&, Graphics::Scene&)'
Camera.h:21: error: candidates are: void
Graphics::Camera::captureImage(ipl::CImage*, Scene&)
.../../src/ipl98/source/ipl98/cpp/std_image.h: At global scope:
.../../src/ipl98/source/ipl98/cpp/std_image.h:190: warning: inline function `
virtual UINT32 ipl::CStdImage::GetPixelFast(int, int) const' used
but never
defined
make[2]: *** [Scene.lo] Error 1
make[2]: Leaving directory `/home/soren/robp01/robp01/src/Graphics'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/soren/robp01/robp01/src'
make: *** [all] Error 2
(soren@hurup) ~/robp01/robp01/src > cd '/home/soren/robp01/robp01/src'
(soren@hurup) ~/robp01/robp01/src > cd
'/home/soren/robp01/robp01/src/Graphics'
(soren@hurup) ~/robp01/robp01/src/Graphics > cd
'/home/soren/robp01/robp01/src'
(soren@hurup) ~/robp01/robp01/src > cd
'/home/soren/robp01/robp01/src/Graphics'
(soren@hurup) ~/robp01/robp01/src/Graphics > make
if /bin/sh ../../libtool --mode=compile g++ -DHAVE_CONFIG_H -I. -I.
-I../../src -g -O2 -MT Scene.lo -MD -MP -MF ".deps/Scene.Tpo" -c -o
Scene.lo Scene.cpp; \
then mv -f ".deps/Scene.Tpo" ".deps/Scene.Plo"; else rm -f
".deps/Scene.Tpo"; exit 1; fi
g++ -DHAVE_CONFIG_H -I. -I. -I../../src -g -O2 -MT Scene.lo -MD -MP
-MF .deps/Scene.Tpo -c Scene.cpp -o Scene.o
Scene.cpp:124: error: prototype for `void
Graphics::Scene::captureImage(ipl::CImage*)' does not match any in
class `
Graphics::Scene'
Scene.h:26: error: candidate is: void
Graphics::Scene::captureImage(ipl::CImage*, Graphics::Scene&)
Scene.cpp: In member function `void
Graphics::Scene::captureImage(ipl::CImage*)
':
Scene.cpp:125: error: no matching function for call to `Graphics::Camera::
captureImage(ipl::CImage*&, Graphics::Scene&)'
Camera.h:21: error: candidates are: void
Graphics::Camera::captureImage(ipl::CImage*, Scene&)
.../../src/ipl98/source/ipl98/cpp/std_image.h: At global scope:
.../../src/ipl98/source/ipl98/cpp/std_image.h:190: warning: inline function `
virtual UINT32 ipl::CStdImage::GetPixelFast(int, int) const' used
but never
defined
make: *** [Scene.lo] Error 1
----
Scene afhænger af Camera og Camera afhænger af Scene, så vi har lidt
cyklisk afhængighed her.
De to klasser er såmænd ikke så store, og deres afhængighed er utrolig
lille, men hvis der er nogen som kan fortælle os hvordan vi får skidtet
til at compile, så ville det være kanon
På forhånd mange tak for hjælpen. Er helt fortabt i denne fejlmeddelelse
og forstår slet ikke hvorfor den kommer.
Med venlig hilsen
Preben Holm