Try including the header-file in the .cpp to begin with...

//Markus

Udo Giacomozzi wrote:
> Hi,
> 
> this is probably a dump question, but I fail adding
> render_handler_tri.cpp to the source tree.
> 
> The source files are very simple:
> 
> --- render_handler_tri.h ---------------------------------
> #ifndef GNASH_RENDER_HANDLER_TRI_H
> #define GNASH_RENDER_HANDLER_TRI_H
> 
> #include "gnash.h"
> #include "types.h"
> #include "image.h"
> #include "utility.h"
> #include "log.h"
> 
> #include "render_handler.h"
> 
> namespace gnash
> {
> 
> class triangulating_render_handler : public render_handler
> {
> public:
> 
>   virtual void testtesttest();
> 
> }
> 
> #endif // GNASH_RENDER_HANDLER_IMPL_H
> 
> 
> --- render_handler_tri.cpp -------------------------------
> 
> #include "gnash.h"
> #include "types.h"
> #include "image.h"
> #include "utility.h"
> #include "log.h"
> #include "render_handler.h"
> #include "shape_character_def.h"
> #include "generic_character.h"  
> 
> namespace gnash {
> 
> class triangulating_render_handler : public render_handler
> {
> public:
> 
> 
>   virtual void testtesttest() {
>     log_msg("hello");
>   }
> 
> }; // class triangulating_render_handler
> 
> }  
> 
> 
> -----------------------------------------------------------
> 
> I added the file to Makefile.am:
> RENDER_SOURCES = render_handler_agg.cpp render_handler_tri.cpp
> then run automake and config.
> 
> But then the linker fails:
> 
> 
> g++ -g -O2 -march=pentium3 -W -Wall -Wcast-align -Wcast-qual -Wpointer-arith 
> -Wreturn-type -o .libs/gnash gnash.o  /usr/lib/libpango-1.0.so 
> /usr/lib/libgobject-2.0.so /usr/lib/libpangox-1.0.so ./.libs/libgnashgui.so 
> ../libamf/.libs/libgnashamf.so ../backend/.libs/libgnashbackend.so 
> ../server/.libs/libgnashserver.so ../server/asobj/.libs/libgnashasobjs.a 
> /home/indunet/gnash/libamf/.libs/libgnashamf.so -L/usr/lib -L/usr/X11R6/lib 
> -L/usr/share/qt3/lib /home/indunet/gnash/libbase/.libs/libgnashbase.so 
> /usr/lib/libjpeg.so /usr/lib/libSDL.so /usr/lib/libartsc.so 
> /usr/lib/libgmodule-2.0.so /usr/lib/libgthread-2.0.so /usr/lib/libglib-2.0.so 
> /usr/lib/libesd.so /usr/lib/libaudiofile.so /usr/lib/libaa.so 
> /usr/lib/libasound.so ../libgeometry/.libs/libgnashgeo.so 
> ../libbase/.libs/libgnashbase.so ./.libs/libgnashplayer.so -lm 
> -L/home/indunet/agg-2.4/src -lagg -lpng -laudio -lXt -lXext -lvga -lncurses 
> -lslang -lX11 -lpthread -lz -lGL -lGLU -ldl -lrt -Wl,--rpath 
> -Wl,/usr/local/lib
> ../backend/.libs/libgnashbackend.so: undefined reference to `typeinfo for 
> gnash::triangulating_render_handler'
> ../backend/.libs/libgnashbackend.so: undefined reference to 
> `gnash::triangulating_render_handler::testtesttest()'
> 
> 
> The method can be found in libgnashbackend.so
>          U _ZN5gnash28triangulating_render_handler12testtesttestEv
> and in render_handler_agg.o (since it's the only class that derives
> from it).
>          U _ZN5gnash28triangulating_render_handler12testtesttestEv
> 
> 
> 
> What's wrong here?
> 
> Udo
> 
> 
> 
> _______________________________________________
> Gnash-dev mailing list
> [email protected]
> http://lists.gnu.org/mailman/listinfo/gnash-dev

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Gnash-dev mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gnash-dev

Reply via email to