Open
Description
I created a simple test module example/example.cpp
using the pybind11
library, then to compile it I used CMakeLists.txt
:
cmake_minimum_required(VERSION 2.8.12)
project(example)
set(PYBIND_DIR "/home/hakon/pybind11/pybind11")
add_subdirectory(${PYBIND_DIR} pybind11)
pybind11_add_module(example example/example.cpp)
then created a build
folder, and ran cmake
:
mkdir build
cd build
cmake ..
The output is:
-- Found PythonInterp: /home/hakon/.pyenv/shims/python3.8 (found version "1.4")
CMake Error at /home/hakon/pybind11/pybind11/tools/FindPythonLibsNew.cmake:96 (message):
Python config failure:
pyenv: python3.8: command not found
The `python3.8' command exists in these Python versions:
3.8.0
3.8.0-debug
Call Stack (most recent call first):
/home/hakon/pybind11/pybind11/tools/pybind11Tools.cmake:16 (find_package)
/home/hakon/pybind11/pybind11/CMakeLists.txt:33 (include)
-- Configuring incomplete, errors occurred!
See also "/home/hakon/pybind11/test/build/CMakeFiles/CMakeOutput.log".
I am using pyenv
with the following versions installed:
$ pyenv versions
system
2.7.16
* 3.7.3 (set by /home/hakon/.pyenv/version)
3.8.0
3.8.0-debug
Notice that pybind11Tools.cmake
finds the version 3.8.0
even though the current is set to 3.7.3
. If I shift to version 3.8.0
it runs fine:
$ pyenv local 3.8.0
$ cmake ..
-- Found PythonInterp: /home/hakon/.pyenv/shims/python3.8 (found version "3.8")
-- Found PythonLibs: /home/hakon/.pyenv/versions/3.8.0/lib/libpython3.8.a
-- Performing Test HAS_CPP14_FLAG
-- Performing Test HAS_CPP14_FLAG - Success
-- pybind11 v2.5.dev1
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- LTO enabled
-- Configuring done
-- Generating done
-- Build files have been written to: /home/hakon/pybind11/test/build
Metadata
Metadata
Assignees
Labels
No labels