On May 19, 2014, at 9:36 PM, Lars Viklund
On Mon, May 19, 2014 at 07:42:14PM -0700, Paul Hoffman wrote:
Greetings. I am compiling Boost 1.54.0 from source on a Debian 7.0.0 system built on a virtual machine. When that system has Python 3.1.5, Boost compiles. However, for a different program on that system, I need a newer Python. I started a new VM, installed Python 3.3.5 instead of 3.1.5, and tried to build Boost the same way. That dies, spewing a lot of stuff that looks like:
...found 10793 targets... ...updating 68 targets... gcc.compile.c++ bin.v2/libs/python/build/gcc-4.7/release/threading-multi/numeric.o In file included from ./boost/python/detail/prefix.hpp:13:0, from ./boost/python/numeric.hpp:8, from libs/python/src/numeric.cpp:6: ./boost/python/detail/wrap_python.hpp:50:23: fatal error: pyconfig.h: No such file or directory
Some distros have separate packages for runtime/libraries and for development-only files like headers. Verify the presence of the -dev/-devel package for Python 3.3.5.
I am installing Python3 from source as well, so I think that the "-dev" bits are there. For each version, I do just a plain "tar -xvf ./Python-3.1.5.tgz && cd Python-3.1.5 && ./configure && make && make install" FWIW, I tried another experiment with Python 3.2.5, and it failed in the same way as Python 3.3.5. The project-config.jam file has the appropriate python version for what was installed. For example, when I changed to 3.2.5, it says: ========== # Python configuration using python : 3.2 : ; ========== More guesses about why Python 3.2 or 3.3 are preventing compilation are appreciated. --Paul Hoffman