Boost Python Numpy - неопределенная ссылка для инициализации - PullRequest
0 голосов
/ 20 сентября 2018

У меня проблемы при связывании следующего кода:

#include <boost/python.hpp>
#include <boost/python/numpy.hpp>

BOOST_PYTHON_MODULE (MyLibrary)
{

    Py_Initialize() ;
    boost::python::numpy::initialize() ;

    ...

}

, который возвращает:

undefined reference to `boost::python::numpy::initialize(bool)'

Я использую Boost 1.68 с Python 3.6, скомпилированный следующим образом:

./bootstrap.sh --with-python=/usr/bin/python3 --with-python-version=3.6 --with-python-root=/usr/lib/python3.6
./b2 --with-python link=shared install

И я связываюсь, используя:

/usr/bin/c++ -shared
-o MyLibrary.so
MyLibrary.cpp.o
-L/usr/local/lib
-lpython3.6m
/usr/local/lib/libboost_python36.so

Любая идея ...?

1 Ответ

0 голосов
/ 20 сентября 2018

Решением было сначала установить пакет python3-numpy, в противном случае libboost_numpy.so не генерируется.

Конец истории!

...