Re: [Boost-users] Boost cannot find numpy37 on Dockerized Ubuntu 20.04

Op wo 17 feb. 2021 om 20:30 schreef Anonymous Maarten < anonymous.maarten@gmail.com>:
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.
I've also given 20.10 a try, however I ran into the same linking issues as mentioned above.

The missing symbols you quoted come from python itself. It looks like you're missing a "-lpython" linker flag. Regards, Nathan On Fri, Feb 19, 2021, 4:47 AM Roy de Bokx via Boost-users < boost-users@lists.boost.org> wrote:

Op vr 19 feb. 2021 om 22:05 schreef Nathan Ernst via Boost-users < boost-users@lists.boost.org>:
The missing symbols you quoted come from python itself. It looks like you're missing a "-lpython" linker flag.
Thanks! That definitely put me on the right track. Eventually I got it working using the "-lpython3.6m" flag, since I found that the Python3.6 .so file was situated at /usr/lib/x86_64-linux-gnu/libpython3.6m.so Many thanks, this is much appreciated! I've pasted the full Dockerfile in https://github.com/boostorg/boost/issues/462, in case anyone is interested.
participants (2)
-
Nathan Ernst
-
Roy de Bokx