
Martin Wille <mw8329@yahoo.com.au> writes:
David Abrahams wrote:
Martin Wille writes:
Trying: assert abs(rewrap_value_complex_float(4+.2j) - (4+.2j)) < .000001 Expecting: nothing Segmentation fault Wild guess: This is an ODR violation. The Boost.Python library and the test shared library were compiled with a different definition of std::complex.
How could that have happened?
Weird INCLUDE picked up from the environment? Sorry, after that I'm fresh out of wild guesses ;-) GDB should be able to show you what's going wrong, though.
Note, this is not the intel compiler, so flags like "-cxxlib-gcc" shouldn't be a problem here. Could the build system use so different flags that the resulting libraries wouldn't be interoperable? (I know this can happen rather easily on other systems. However, I haven't seen that with gcc on Linux as long as you stick to the same compiler version).
Python was compiled using gcc 3.3.4. Could this cause the problem? (I don't think so.)
I don't think they changed the ABI for 3.4.1 did they? -- Dave Abrahams Boost Consulting http://www.boost-consulting.com