2016-08-26 4 views
1

Я пытаюсь установить boost.numpy в y Ubuntu 16.04. Я попробовал эту commnads установить boost.numpyboost_python3 отсутствует от ubuntu 16.04

**git clone https://github.com/ndarray/Boost.NumPy.git 
cd Boost.NumPy && mkdir build && cd build 
cmake -DPYTHON_LIBRARY=$HOME/anaconda3/lib/libpython3.5m.so ../** 

После этого CMake я столкнулся эта ошибка:

Обнаружена архитектура 'x86_64'

-- Using Python3 

    CMake Error at /usr/share/cmake-3.5/Modules/FindBoost.cmake:1677 (message): 
     Unable to find the requested Boost libraries. 

    Boost version: 1.59.0 
    Boost include path: /home/sumit/Documents/Software/boost_1_59_0 
    Could not find the following static Boost libraries: 

      boost_python3 

    No Boost libraries were found. You may need to set BOOST_LIBRARYDIR to the 
    directory containing Boost libraries or BOOST_ROOT to the location of 
    Boost. 
Call Stack (most recent call first): 
    CMakeLists.txt:48 (find_package) 


Boost Paths: 
Include : /home/sumit/Documents/Software/boost_1_59_0 
**Libraries**: /home/sumit/Documents/Software/boost_1_59_0/libs 
Configuring incomplete, errors occurred! 

Смотрите также «/ Главный/Sumit/Документы /Software/Boost.NumPy/build/CMakeFiles/CMakeOutput.log».

Раньше он не мог найти библиотеки ускорения. Sp i manualy изменил путь библиотеки CmakeList.txt по пути пути boost_1_59_0 lib. Этот путь появляется в библиотечном варианте, когда я делаю cmake. Но все же boost_python3 отсутствует. Я новичок в этом, что я пробовал, просто результат Google. Пожалуйста, помогите.

+0

Вы пытаетесь использовать версии развития или официальный выпущен версии? –

ответ

1

на убунту имена библиотек для повышения являются: libboost_python, libboost_python-py35 или libboost_python-py27

это означает, что в cmake вам нужно обратиться к ним, как python-35 вместо python3. в качестве альтернативы, если не контролировать CMakeLists.txt вы можете создать символическую ссылку: /usr/lib/x86_64-linux-gnu/libboost_python-py35.so ->/usr/lib/x86_64-linux-gnu/libboost_python3.so

В моем CMakeLists.txt файле У меня есть следующие:

if(UNIX) 
    set(BOOST_PYTHONLIB python-py35) 
else() 
    set(BOOST_PYTHONLIB python3) 
endif() 

find_package (Boost 1.58 REQUIRED COMPONENTS 
    coroutine 
    context 
    filesystem 
    program_options 
    system 
    thread 
    ${BOOST_PYTHONLIB} 
    chrono 
    )