[SciPy-user] scipy 0.4.4 problems with converters.blitz

Christian Kristukat ckkart at hoc.net
Sun Jan 29 08:29:03 CST 2006


David M. Cooke wrote:
> Pearu Peterson <pearu at scipy.org> writes:
> 
>> On Fri, 27 Jan 2006, Travis Oliphant wrote:
>>
>>>>> /home/ck/.python23_compiled/sc_9824b12a96792c10b5fdb725f9caa3c414.cpp:5:
>>>>> /usr/lib/python2.3/site-packages/scipy/weave/blitz/blitz/compiler.h:38:6:
>>>>> #error
>>>>> In <blitz/config.h>: A working template implementation is required by Blitz++
>>>>> (you may need to rerun the compiler/bzconfig script)
>>>>>
>>>>> I've tried to install Blitz 0.9, so that at least weave can find the header
>>>>> file
>>>>> "gnu/bzconfig.h" but it didn't really help.
>>>>>
>>>>> Any ideas what is wrong?
>>> Try moving the gnu/bzconfig.h file from the installation directory to
>>> the weave directory
>>>
>>> /usr/lib/python2.3/site-packages/scipy/weave/blitz/blitz/gnu
>>>
>>> Then try again.
>>>
>>> We may be missing some files when the upgrade in blitz occurred.
>> Indeed, scipy/Lib/weave/blitz/blitz/gnu is an empty directory in scipy 
>> SVN.
> 
> Fixed. I added the bzconfig.h that I had used when I updated it last.
> 

Thanks! That works.
Unfortunately the inline code that used to work before still doesn't compile. It
seems to be related to the support code I'm using. In the error message below
dist(double, double, int, double) is a function of the support code. Have there
been changes to weave that I'm not aware of?

/home/ck/.python24_compiled/sc_9824b12a96792c10b5fdb725f9caa3c44.cpp: In
function ‘PyObject* compiled_func(PyObject*, PyObject*)’:
/home/ck/.python24_compiled/sc_9824b12a96792c10b5fdb725f9caa3c44.cpp:837: error:
ISO C++ says that these are ambiguous, even though the worst conversion for the
first is better than the worst conversion for the second:
/usr/lib/python2.4/site-packages/scipy/weave/blitz/blitz/array-impl.h:1910:
note: candidate 1: typename blitz::SliceInfo<P_numtype, T1, T2,
blitz::nilArraySection, blitz::nilArraySection, blitz::nilArraySection,
blitz::nilArraySection, blitz::nilArraySection, blitz::nilArraySection,
blitz::nilArraySection, blitz::nilArraySection, blitz::nilArraySection>::T_slice
blitz::Array<T, N>::operator()(T1, T2) const [with T1 = long int, T2 = int,
P_numtype = double, int N_rank = 2]
/usr/lib/python2.4/site-packages/scipy/weave/blitz/blitz/array-impl.h:1637:
note: candidate 2: P_numtype& __restrict__ blitz::Array<T, N>::operator()(int,
int) [with P_numtype = double, int N_rank = 2]
/home/ck/.python24_compiled/sc_9824b12a96792c10b5fdb725f9caa3c44.cpp:837: error:
cannot convert ‘blitz::Array<double, 0>’ to ‘double’ for argument ‘2’ to ‘double
dist(double, double, int, double)’


Regards, Christian



More information about the SciPy-user mailing list