-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pybind11/pybind11.h: No such file or directory - Previous solution not working #698
Comments
See: http://pybind11.readthedocs.io/en/master/compiling.html#find-package-vs-add-subdirectory Assuming the pybind cmake file has been properly installed somewhere cmake knows about, that should get you going. |
Error:By not providing "Findpybind11.cmake" in CMAKE_MODULE_PATH this project has asked CMake to find a package configuration file provided by "pybind11", but CMake did not find one. |
Oh, pip doesn't give you the cmake files. The simplest solution is to check out the pybind11 source and include in with Another solution is to do a proper pybind installation (which unlike the pip installation, also installs the cmake tools). |
@jagerman Thanks so far! This is just quick update to acknowledge you that I am investigating this issue later today. I try to report here accurately what I discover along the way. Hopefully that will help someone else later. |
@jshellen Have you tried cloning one the example repositories (python_example or cmake_example)? They both work on Windows and should provide a good starting point for development. Unless I'm missing some specific build requirement which isn't covered by those examples repositories? |
@jshellen - did you get this working? Can I close the issue? |
I have encourtered the same issue when tried to build fasttext in anaconda environment. For me I had to use Even though |
Maybe you are supposed to install pybind11 with command like this |
This seems to be the solution. Worked for me. But in general if you are using conda prefer to install core tools in the base rather then your own environment. That always works for other child environments. |
I checked if similar question has already been answered in the FAQ. The short answer is YES. However, I tried to follow the solution and it did not work. I have been trying to fix this for a week now and I am forced to ask it here.
Issue description
//////////////////////////////////////
Recently, I have been trying to get pybind11 working on my Windows computer. The pybind11 works on my mac OS X without any errors. However, on Windows I receive this error.
C:\Users\Juha.CLion2016.2\system\cygwin_cmake\bin\cmake.exe --build C:\Users\Juha.CLion2016.2\system\cmake\generated\Test-9f0d7c2a\9f0d7c2a\Debug --target Test -- -j 4
Scanning dependencies of target Test
[ 50%] Building CXX object CMakeFiles/Test.dir/main.cpp.o
/cygdrive/c/Users/Juha/Desktop/C++/Test/main.cpp:2:31: fatal error: pybind11/pybind11.h: No such file or directory
compilation terminated.
make[3]: *** [CMakeFiles/Test.dir/build.make:63: CMakeFiles/Test.dir/main.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:68: CMakeFiles/Test.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:80: CMakeFiles/Test.dir/rule] Error 2
make: *** [Makefile:118: Test] Error 2
Tried solution
//////////////////////////////////////
I tried to make sure that the file pybind11.h could be found by CLion. So I used Windows search to locate pybind11. It turns out that pip install installed pybind11 in the following places:
Each folder have the following files:
16. pybind11.h
In each __ init __.py I hardcoded the path pointing to the folder where pybind11.h is located. So for each __ init __.py I hardcoded unique path pointing to the four different folders including pybind11.h. This did not solve the problem. I am clueless.
Reproducible example code
//////////////////////////////////////
In my project folder I have the following files:
CMakeLists.txt
main.cpp
The text was updated successfully, but these errors were encountered: