Op wo 17 feb. 2021 om 20:30 schreef Anonymous Maarten < anonymous.maarten@gmail.com>:
Thanks for your answer Maarten!
Please bare with me as I'm a little new to this. Is there some way I can change the interpreter that is used for installing boost? Or do you think that adapting the --prefix flag may also work?
When using the pre-built boost packages of a linux distribution (ubuntu), you're generally stuck with the versions/options that its packagers have chosen. A distribution freezes versions to make a more robust experience.
Adding a `--prefix` will not help because, first of all, it's not a valid gcc option, and second, ubuntu 18.04 does not provide a libboost-python-py37 shared/static library. Do you really need python 3.7? Doesn't 3.6 suffice?
Thanks! This helped me understanding the issue a bit further. I think 3.6 should suffice indeed, so I tried using 3.6 by removing the 3.7 installation from the Dockerfile and using the -lboost_numpy3 flag instead. It seems I ran into some linking issue after this. It was able to find the right numpy3.so and libboost_python3-py36.so, but I'm getting a lot of errors like these: //usr/lib/x86_64-linux-gnu/libboost_numpy3.so: undefined reference to `PyExc_ValueError' //usr/lib/x86_64-linux-gnu/libboost_python3-py36.so.1.65.1: undefined reference to `PyLong_AsLong' //usr/lib/x86_64-linux-gnu/libboost_python3-py36.so.1.65.1: undefined reference to `PyNumber_InPlaceFloorDivide' //usr/lib/x86_64-linux-gnu/libboost_python3-py36.so.1.65.1: undefined reference to `PyBool_Type' etc... I've pasted the full docker file and logs in https://github.com/boostorg/boost/issues/462 Thanks again for any help.
If you really want to use Boost.Python + python 3.7, you can do 2 things: - stay on ubuntu bionic and build boost yourself (or use an alternative c/c++ package manager, e.g. [conan](https://conan.io/) has a [boost package](https://conan.io/center/boost)) - more to a more recent ubuntu release. e.g. ubuntu 20.10 has python 3.8: https://packages.ubuntu.com/groovy/amd64/libboost-python1.71-dev/filelist
I've also given 20.10 a try, however I ran into the same linking issues as mentioned above.