安装Odoo17依赖时libsass编译失败,已装VS2022如何解决?
问题说明
执行pip install -r requirements.txt安装Odoo 17依赖时,遇到libsass编译失败错误,已安装Visual Studio 2022和Python 3.10。
翻译后的错误日志
Using cached zope.event-5.0-py3-none-any.whl (6.8 kB)
Using cached zope.interface-6.1-cp310-cp310-win_amd64.whl (204 kB)
Using cached soupsieve-2.5-py3-none-any.whl (36 kB)
Building wheels for collected packages: libsass
Building wheel for libsass (setup.py) ... error
error: subprocess-exited-with-error× python setup.py bdist_wheel 执行失败。
│ 退出码: 1
╰─> [19行输出]
你可能需要Visual Studio 2015 (14.0)或更高版本
running bdist_wheel
running build
running build_py
创建build目录
创建build\lib.win-amd64-cpython-310目录
复制pysassc.py -> build\lib.win-amd64-cpython-310
复制sass.py -> build\lib.win-amd64-cpython-310
复制sassc.py -> build\lib.win-amd64-cpython-310
复制sasstests.py -> build\lib.win-amd64-cpython-310
创建build\lib.win-amd64-cpython-310\sassutils目录
复制sassutils\builder.py -> build\lib.win-amd64-cpython-310\sassutils
复制sassutils\distutils.py -> build\lib.win-amd64-cpython-310\sassutils
复制sassutils\wsgi.py -> build\lib.win-amd64-cpython-310\sassutils
复制sassutils_compat.py -> build\lib.win-amd64-cpython-310\sassutils
复制sassutils_init_.py -> build\lib.win-amd64-cpython-310\sassutils
running build_ext
编译'_sass'扩展
error: 需要Microsoft Visual C++ 14.0或更高版本。请通过"Microsoft C++ Build Tools"获取
[输出结束]note: 此错误源自子进程,并非pip本身问题
ERROR: 构建libsass的wheel失败
执行setup.py clean for libsass
Failed to build libsass
ERROR: 无法为libsass构建wheel,这是安装基于pyproject.toml的项目所必需的
解决步骤
你已经安装了Visual Studio 2022,但缺少C++编译工具组件,按以下操作补充安装:
- 打开Visual Studio Installer,找到已安装的Visual Studio 2022实例,点击「修改」
- 在「工作负载」标签下,勾选「桌面开发使用C++」,确保包含以下核心组件:
- MSVC v143 - VS 2022 C++ x64/x86生成工具
- Windows 10/11 SDK(根据你的系统版本选择)
- C++ CMake工具 for Windows
- 点击「修改」完成组件安装,之后重启电脑
- 重新执行
pip install -r requirements.txt
如果上述方法仍无效,可尝试直接安装预编译的libsass包,跳过编译过程:
pip install libsass==0.21.0 --only-binary :all:
内容的提问来源于stack exchange,提问作者heba

