[Help] Problem with blitz++ package (debian lenny, amd64). (fwd)
Hi,
via Google I have seen that the same problem was reported (and solved,
but I have no idea how to obtain the patch) in archlinux:
http://bbs.archlinux.org/viewtopic.php?pid=404588
The user who reported the problem found out that the following workaround
solves the problem on his machine:
--- blitz++-0.9.orig/blitz/compiler.h
+++ blitz++-0.9/blitz/compiler.h
@@ -114,6 +114,7 @@
#error In <blitz/config.h>: Your compiler does not support enum computations. You may have to rerun compiler/bzconfig.
#endif
+#undef BZ_MATH_FN_IN_NAMESPACE_STD
#if defined(BZ_MATH_FN_IN_NAMESPACE_STD)
#define BZ_MATHFN_SCOPE(x) std::x
#elif defined(BZ_HAVE_NAMESPACES)
but I'm hesitant to apply this without beeing able to test it myself.
The problem is: If the problem really exists it would be a FTBFS error
and thus RC critical. In this case I would like to have some more eyes
looking at the solution before breaking things at other systems.
Any opinions?
Kind regards
Andreas.
--
http://fam-tille.de
---------- Forwarded message ----------
Date: Wed, 27 Aug 2008 11:32:20 +0200
From: Thierry Dumont <tdumont@math.univ-lyon1.fr>
To: tille@debian.org
Subject: Problem with blitz++ package (debian lenny, amd64).
I upgraded yestarday my AMD64, debian, lenny.... and since, I cannot use
blitz++.
This happens with the debain package, but also when I try to compile it
from source.
The compiler complains about "labs" in the stdc++ lib. Here is the error
message:
make[1]: entrant dans le r=E9pertoire =AB
/homes/doua/tdumont/Opteron/blitz-0.9/lib =BB
if /bin/sh ../libtool --mode=3Dcompile --tag=3DCXX c++ -DHAVE_CONFIG_H
-I.. -I.. -MT globals.lo -MD -MP -MF ".deps/globals.Tpo" -c -o
globals.lo `test -f '../src/globals.cpp' || echo './'`../src/globals.cpp;=
\
then mv -f ".deps/globals.Tpo" ".deps/globals.Plo"; else rm -f
".deps/globals.Tpo"; exit 1; fi
c++ -DHAVE_CONFIG_H -I.. -I.. -MT globals.lo -MD -MP -MF
.deps/globals.Tpo -c ../src/globals.cpp -o globals.o
In file included from ../blitz/applics.h:400,
from ../blitz/vecexpr.h:32,
from ../blitz/vecpick.cc:16,
from ../blitz/vecpick.h:293,
from ../blitz/vector.h:449,
from ../blitz/tinyvec.h:430,
from ../blitz/indexexpr.h:30,
from ../src/globals.cpp:11:
../blitz/mathfunc.h: In static member function 'static long int
blitz::_bz_abs<long int>::apply(long int)':
../blitz/mathfunc.h:45: error: 'labs' is not a member of 'std'
Reply to: