WSL Ubuntu环境编译libfreenect报CYTHON_EXECUTABLE-NOTFOUND错误
报错原因
CMake在预配置阶段未检测到你已安装的Cython可执行文件,缓存中CYTHON_EXECUTABLE变量被标记为未找到,导致编译到Python绑定部分时触发报错。
解决步骤
- 先确认Cython可执行文件的有效性,执行以下命令验证安装:
cython3 --version # 或 cython --version
如果输出版本号为0.29.24说明安装正常,继续下一步;如果提示命令不存在,检查是否是pip安装路径未加入系统PATH,或者Cython安装在了Python虚拟环境中未激活。
- 清理旧的编译缓存:
进入你之前的libfreenect/build目录,删除所有旧的生成文件:
cd ~/libfreenect/build rm -rf *
- 重新执行CMake配置,手动指定Cython路径:
cmake .. -DCYTHON_EXECUTABLE=$(which cython3) # 如果你的Cython可执行文件名为cython,就改成$(which cython)
- 重新执行编译:
make -j$(nproc)
备选方案
如果你不需要使用libfreenect的Python绑定,可以直接关闭Python wrapper的编译选项,跳过Cython依赖检查:
cd ~/libfreenect/build rm -rf * cmake .. -DBUILD_PYTHON3=OFF make -j$(nproc)
也可以先安装Ubuntu源自带的Cython3包避免路径识别问题:
sudo apt update sudo apt install -y cython3
内容的提问来源于stack exchange,提问作者DunZek
相关产品推荐
相关产品推荐

