-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Recent CMake changes prefer pybind11 installed in /usr/local/include to development files [macOS] #2381
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
Comments
The CI is green though. Can you check if including |
I can't really reproduce, it seems. Also on commit 1732046, with Python 3.8 ( |
The issue was my homebrew pybind11 package installed in Whatever v2.5.0 did, it ensured that the project pybind11 includes took priority over the system install. |
Two possible reasons. If we used to run But since I don't think I remember seeing a build directory export, I assume you are doing something to pick it up? What are you doing that causes it to be picked up (before)? Do you have a repo with a CMakeLists somewhere I can look at? The old tools were bad at changing the Edit: Wait, is this for a different project, or for building pybind11's own tests? It would be better if I actually read the issue, apparently. |
Nvm, I know what changed. Let me think about it. In the meantime, the correct thing to do with brew is to |
I was able to reproduce, Boost is the culprit, and it only affects building pybind11's tests. You have to have boost and pybind11 installed in the same location to trigger the incorrect include ordering. |
By the way, use: mkdir build
cd build
cmake ..
VERBOSE=1 make [check] Or, better yet: cmake -S . -B build
cmake --build build -v To see the incorrect include ordering. |
Issue description
Checkout HEAD - commit 1732046
This is a regression compared to v2.5.0, where commands above work without issue.
cmake: 3.18.1
clang: Apple clang version 11.0.0 (clang-1100.0.33.17)
make: GNU Make 3.81
Result:
The same errors occurs in each of these cases:
pip install .
is used to install pybind11pip install -e .
is used to install pybind11 in edit modeThe text was updated successfully, but these errors were encountered: