boostorg / boostorg/python

BoostDetectToolset-1.90.0.cmake file not found in an include() call in boost_python-config.cmake

未关闭
#525 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
C++
星标
537
派生
223
平均合并
11 小时 22 分钟
30 天内合并 PR
2

描述

I first installed Python 3.14, Boost 1.90.0 and Boost.Python with Brew on my macOS Sonoma 14.4 and built a minimum working example with CMake, but it didn't work.

When I used
```cmake
find_package(Boost REQUIRED COMPONENTS python)
```
to find Boost and ran with command
```bash
cmake .. -DCMAKE_PREFIX_PATH='/usr/local/opt/boost' -DBoost_DEBUG=1
```
the following error occured:
```
CMake Error at /usr/local/lib/cmake/boost_python-1.90.0/boost_python-config.cmake:29 (include):
include could not find requested file:

/usr/local/lib/cmake/boost_python-1.90.0/../BoostDetectToolset-1.90.0.cmake
Call Stack (most recent call first):
/usr/local/opt/boost/lib/cmake/Boost-1.90.0/BoostConfig.cmake:141 (find_package)
/usr/local/opt/boost/lib/cmake/Boost-1.90.0/BoostConfig.cmake:262 (boost_find_component)
CMakeLists.txt:10 (find_package)
```

After checking the file system, no file named `BoostDetectToolset-1.90.0.cmake` was found in either `/usr/local/lib/cmake/boost_python-1.90.0/..`, `/usr/local/opt/boost-python3/lib/cmake`, or `/usr/local/Cellar/boost-python3/1.90.0/lib/cmake`. The only `BoostDetectToolset-1.90.0.cmake` file was in `/usr/local/Cellar/boost/1.90.0_1/lib/cmake`.

Because there is a
```cmake
include(${CMAKE_CURRENT_LIST_DIR}/../BoostDetectToolset-1.90.0.cmake)
```
in the file `/usr/local/lib/cmake/boost_python-1.90.0/boost_python-config.cmake` which was auto-generated by Boost, and `CMAKE_CURRENT_LIST_DIR` here refers to `/usr/local/lib/cmake/boost_python-config.cmake`, I suppose there must be something wrong with the generator of the file.

The following are my minimum working example:
[CMakeLists.txt](https://github.com/user-attachments/files/30335425/CMakeLists.txt)
[module.cpp](https://github.com/user-attachments/files/30335426/module.cpp)

Do you have any suggestions? Thanks in advance.

贡献指南

这个仓库没有索引到贡献指南

调研方向

Run the attached CMakeLists.txt example with the stated Boost and Python versions, then inspect boost_python-config.cmake and BoostConfig.cmake around the failing include() call. Compare the generated configuration paths with the BoostDetectToolset-1.90.0.cmake locations reported in the issue; done means find_package(Boost REQUIRED COMPONENTS python) completes successfully.

由索引模型根据 Issue 内容生成。

评估

技术栈
cmake, cpp, macos, python
领域
build-system
Issue 类型
缺陷
难度
3/5
预计耗时
1-2 天
活跃度
冷清
描述清晰度
基本清楚
新手友好度
48/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。