Blitz logo

Blitz Support :

From: Frank Schimmel (frs_at_[hidden])
Date: 2004-02-10 04:45:08


Hi Julian, hi Markus, hello everyone!

I used blitz version 0.7 with icc (same version as you) and did not
encounter any problems. This includes the testsuite and examples (just
re-ran the whole thing and it works fine).

>> Julian C Cummings writes:

> Hi Markus,
> I'm glad things are working for you now. I don't understand why you have to
> add namespace std and the using directive explicitly yourself. I think this
> happens already in the <blitz/blitz.h> header file. Maybe you are not
> including this file somehow?

It happens only if BZ_NAMESPACES is defined (in config.h).
Is that the case, Markus? (It should!)

The namespace hackery is pretty much obscured by macros defined during
configuration / compiler testing. I think this is a leftover from the
old days, when not all compilers handled namespaces well (or at all)
and there were plenty of workarounds needed.

In a better world this would not happen. IMHO header files should
always fully qualify names and no preprocessor magic would be
necessary.

>>> Markus Christen wrote:
    [...]
>> one other thing: icc has some glibc symbol problems right
>> now, in order to compile, -i_dynamic is needed. i notice that
>> Blitz configure does not honor my LDFLAGS environment variable?

As mentioned above, I cannot reproduce these errors. And indeed, the
configure process of blitz is quite non-standard. You can specify a
different compiler name (CXX, e.g. with version suffix) and
compilation flags (CXXFLAGS) using the (non-standard)
--with-cxx='compiler-type executable_name compilation_flags'
configure option construct. But not the LDFLAGS: it is set explicitly
and unconditionally in configure to handle some 64 bit cases. This is
a Bad Thing since it at odds with the standard behaviour of configure
scripts. It should still be possible to override this with `make
LDFLAGS=... lib'.

I think the whole configuration machinery needs a serious overhaul to
get rid of all the obscuring and fragile cruft. I meant to work on
this for quite a while, but unfortunately I still don't have the
time. It's on the Great List Of Things To Do, though, so I'll
eventually get to do it some day.

So long
-Frank