[sugar] Efficient general purpose tile engine, and a cellular automata machine

Don Hopkins dhopkins at DonHopkins.com
Tue Apr 24 08:44:02 EDT 2007


Thank you for trying it out and reporting back so fast!

That error message sounds like a SWIG runtime incompatibility.
I'm running SWIG 1.3.31. The configure.am only insists on 1.3.21.

Are you using Python 2.5? Maybe that has something to do with it, and 
makes it require the latest version of SWIG.

Not that you don't know, but I forgot to mention you should cd to 
sugar-jhbuild and run "./sugar-jhbuild shell" to get all the environment 
variables set that will get you python 2.5, before running any of the 
configuration of building commands.

Here's a message I googled that suggests the error your getting is 
caused by an old version of SWIG -- so I guess I should fix the 
configure.ac to insist on the required version (1.3.31 works for me):

http://projects.scipy.org/pipermail/scipy-dev/2007-January/006568.html

I should have elaborated.  The problem is caused by using an older
version of SWIG to generate the wrappers.  As Robert Kern pointed out
in a previous thread:

"""
Please use SWIG CVS to generate those files. Most of the errors that Nils
reported are from non-const-preserving assignments in the SWIG runtime
functions. g++ 4 is stricter about those than g++ 3. SWIG CVS corrects those
problems.


"""

It appears that Apple's g++4 is more sensitive to this issue than
other those in other distributions.


When generating the SWIG wrappers for sparsetools, be sure to use the
most recent version of SWIG (i.e. the one currently in svn).


Bert Freudenberg wrote:
>
> On Apr 24, 2007, at 13:04 , Don Hopkins wrote:
>
>> http://www.DonHopkins.com/home/cam.tgz
>>
>> The way to build and run it is:
>>
>> Untar the "cam" directory into your "sugar-jhbuild/source" directory.
>> Go into the directory "sugar-jhbuild/source/cam".
>> Edit the file autogen-sugar.sh to contain the absolute path to your 
>> sugar-jhbuild directory.
>> Run the script "./autogen-sugar.sh" to configure the project.
>> Build and install the project with "make install".
>
> Fails because it depends on SWIG. Maybe you should include the 
> generated glue code?
>
> After installing swig I get this error:
>
> g++ -DHAVE_CONFIG_H -I. -I. -I.. -I.. 
> -I/home/bert/sugar-jhbuild/build/include/python2.5 
> -I/home/bert/sugar-jhbuild/build/include/python2.5 
> -I/home/bert/sugar-jhbuild/build/include/gtk-2.0 
> -I/home/bert/sugar-jhbuild/build/lib/gtk-2.0/include 
> -I/home/bert/sugar-jhbuild/build/include/atk-1.0 
> -I/home/bert/sugar-jhbuild/build/include/cairo 
> -I/home/bert/sugar-jhbuild/build/include/pango-1.0 
> -I/home/bert/sugar-jhbuild/build/include/glib-2.0 
> -I/home/bert/sugar-jhbuild/build/lib/glib-2.0/include 
> -I/home/bert/sugar-jhbuild/build/include/pygtk-2.0 
> -I/home/bert/sugar-jhbuild/build/include/pycairo -g -O2 -MT 
> _cam_la-cam_wrap.lo -MD -MP -MF .deps/_cam_la-cam_wrap.Tpo -c 
> cam_wrap.cpp  -fPIC -DPIC -o .libs/_cam_la-cam_wrap.o
> cam_wrap.cpp: In function 'int 
> SWIG_Python_ConvertFunctionPtr(PyObject*, void**, swig_type_info*)':
> cam_wrap.cpp:2000: error: invalid conversion from 'const char*' to 
> 'char*'
> cam_wrap.cpp: In function 'void SWIG_Python_FixMethods(PyMethodDef*, 
> swig_const_info*, swig_type_info**, swig_type_info**)':
> cam_wrap.cpp:12413: error: invalid conversion from 'const char*' to 
> 'char*'
> make[1]: *** [_cam_la-cam_wrap.lo] Error 1
>
>
> - Bert -
>



More information about the Sugar mailing list