Re: [Chicken-users] swig and c++ and stuff
On 2/26/07, felix winkelmann <[EMAIL PROTECTED]> wrote: The missing symbol is strange, though. Check the _wrap.cxx file and the binaries with nm (and c++filt genRefs() only appears as a friend function in the class prototypes; it isn't implemented so it doesn't belong in the wrap. I removed it and another class function that wasn't implemented, and now it loads fine. I can use the introspection procedures of tinyclos to look at the slots and methods. I suspect that any remaining problems are due to my inexperience with tinyclos. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] swig and c++ and stuff
On 2/26/07, Tony Sidaway <[EMAIL PROTECTED]> wrote: I tried a big SWIG wrap on part of a C++ library. This generated a .cxx wrap file and a .scm file. The build sequence I'm using is this: $(CHICKEN) tvision.scm -output-file otvision.c $(CXX) --shared otvision.c tvision_wrap.cxx -o tvision.so `rhtv-config --include` `rhtv-config --cppflags` `rhtv-config --dir-libs` `rhtv-config --dlibs` -lchicken This seems to build to a tvision.so file, but when I install that and (use tvision), I get this: If you load the code with "use", you *must* pass "-shared" to the Scheme compiler. You also must pass "`csc -shared -cflags -libs`". I recommend to use csc instead of chicken + g++. The missing symbol is strange, though. Check the _wrap.cxx file and the binaries with nm (and c++filt cheers, felix ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] swig and c++ and stuff
What version of SWIG are you using? I've seen this problem with versions prior to 1.3.29. -Ivan "Tony Sidaway" <[EMAIL PROTECTED]> writes: > I tried a big SWIG wrap on part of a C++ library. This generated a > .cxx wrap file and a .scm file. > > The build sequence I'm using is this: > > $(CHICKEN) tvision.scm -output-file otvision.c >$(CXX) --shared otvision.c tvision_wrap.cxx -o tvision.so > `rhtv-config --include` `rhtv-config --cppflags` `rhtv-config > --dir-libs` `rhtv-config --dlibs` -lchicken > > This seems to build to a tvision.so file, but when I install that and > (use tvision), I get this: > > > ersion 2.524 - linux-unix-gnu-x86 - [ libffi dload ptables applyhook cmake ] > (c)2000-2007 Felix L. Winkelmann > ; loading /home/me/.csirc ... > ; loading /usr/local/lib/chicken/1/readline.so ... > ; loading library regex ... > #;1> (use tvision) > ; loading /usr/local/lib/chicken/1/tvision.so ... > Error: (load) unable to load compiled module > "/usr/local/lib/chicken/1/tvision.so" > "/usr/local/lib/chicken/1/tvision.so: undefined symbol: > _ZN6TGroup7matchesEP5TView" > >Call history: > >(use tvision) >(##core#require-extension (quote tvision)) >(begin (begin (##sys#require (quote > tvision))) (##core#undefined)) >(begin (##sys#require (quote tvision))) >(##sys#require (quote tvision)) >(quote tvision) >(##core#undefined) > (##sys#require (quote tvision)) <-- > > I'm a bit new to Swig wraps. Is this a common problem? If so, what > have I done wrong? > ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users