— Найденный PythonLibs:/usr/lib/x86_64-linux-gnu/libpython3.6m.so (Требуемый точная версия “3.6.3”),

Я пытаюсь скомпилировать Панель инструментов сегуна с источника... Я мог, скомпилировал его прежде, все хорошо, но cmake обнаруживают python 2.7 как значение по умолчанию (потому что Ubuntu делает), и я не могу пользоваться той библиотекой в python3.6

Как сказано в ссылке я поместил прежде для компиляции сегуна, чтобы использоваться в python 3, я должен указать, что использую python 3 с помощью cmake таким образом:

cmake -DPYTHON_INCLUDE_DIR=/usr/include/python3.3 -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 -DPYTHON_PACKAGES_PATH=/usr/local/lib/python3.3/dist-packages -DPythonModular=ON ..

Но, затем я делаю это, я получил это в выводе cmake:

Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.6m.so (Required is exact version "3.6.3") 

в то время как я должен получить что-то вроде этого (что делает я добираюсь при использовании python2):

-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython2.7.so (found suitable exact version "2.7.14")

Я думал, что, возможно, у меня нет точно libpython 3.6.3 установленных, но, когда я выполняюсь

sudo apt-get install libpython3.6

Я получаю этот вывод:

libpython3.6 is already the newest version (3.6.3-1ubuntu1).

0 обновленных, 0 недавно установленный, 0 для удаления и 10 не обновленный.

Если я пытаюсь сделать сегуна без, решают эту проблему, которую я получил:

[ 54%] Building CXX object src/interfaces/python/CMakeFiles/_interface_python.dir/shogunPYTHON_wrap.cxx.o
/home/grg121/code/shogun/build/src/interfaces/python

/shogunPYTHON_wrap.cxx:175:11: fatal error: Python.h: No such file or directory
 # include <Python.h>

       ^~~~~~~~~~
compilation terminated.
src/interfaces/python/CMakeFiles/_interface_python.dir/build.make:73: recipe for target 'src/interfaces/python/CMakeFiles/_interface_python.dir/shogunPYTHON_wrap.cxx.o' failed
make[2]: *** [src/interfaces/python/CMakeFiles/_interface_python.dir/shogunPYTHON_wrap.cxx.o] Error 1
CMakeFiles/Makefile2:1219: recipe for target 'src/interfaces/python/CMakeFiles/_interface_python.dir/all' failed
make[1]: *** [src/interfaces/python/CMakeFiles/_interface_python.dir/all] Error 2
Makefile:162: recipe for target 'all' failed
make: *** [all] Error 2

Python.h не найден, но... Если я выполняюсь

locate Python.h

Я добираюсь:

/usr/include/python2.7/Python.h
/usr/include/python3.6m/Python.h

И я выполняю cmake с:

cmake -DINTERFACE_PYTHON=ON BUILD_META_EXAMPLES=ON -DENABLE_TESTING=ON -DCMAKE_BUILD_TYPE=Debug -DBUILD_DASHBOARD_REPORTS=ON -DPYTHON_EXECUTABLE=/usr/bin/python3.6 -DPYTHON_INCLUDE_DIR=/usr/include/Python3.6m -DPYTHON_PACKAGES_PATH=/usr/local/lib/python3.6/dist-packages ..

Так... Я не могу понять то, что, происходят.

У кого-то есть идея того, что, происходят?

Огромное спасибо!

0
задан 3 February 2018 в 11:22

1 ответ

Хорошо. Я заставил его работать....

После re_reading, что readme я видел, что не помещал "PA в DPYTHON_EXECUTABLE

Я не уверен, почему это работает, если делают это, но, выполняясь cmake таким образом:

cmake -DINTERFACE_PYTHON=ON BUILD_META_EXAMPLES=ON -DENABLE_TESTING=ON -DCMAKE_BUILD_TYPE=Debug -DBUILD_DASHBOARD_REPORTS=ON DPYTHON_INCLUDE_DIR=/usr/include/python3.6m -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3.6 -DPYTHON_PACKAGES_PATH=/usr/local/lib/python3.6/dist-packages ..

Я наконец получил его работа.

0
ответ дан 31 October 2019 в 02:08

Другие вопросы по тегам:

Похожие вопросы: