找不到 "vswhere"
could not find "vswhere"
我正在尝试正确安装 运行 PyGMO 的 boost。但是,我把它解压到一个目录后(没有使用git)。
在 运行ning bootstrap vc142
之后(我正在使用 VScode V1.63.2 并且我在 windows 上)。我收到此错误:
Building Boost.Build engine
LOCALAPPDATA=C:\Users\wojci\AppData\Local
could not find "vswhere"
Call_If_Exists "..\bin\VCVARS32.BAT"
###
### Using 'msvc' toolset.
###
其次是:
C:\Program Files\boost\boost_1_78_0\tools\build\src\engine>dir *.exe
Volume in drive C has no label.
C:\Program Files\boost\boost_1_78_0\tools\build\src\engine>copy /b .\b2.exe .\bjam.exe
The system cannot find the file specified.
Failed to build Boost.Build engine.
有人知道如何fix/work解决这个问题吗?
提前致谢
我找到了解决方案 here (git)
先决条件:
首先下载并安装 MinGW 安装程序 mingw-w64-install.exe(我从 Sourceforge 找到它)并确保使用 x86_64 架构。
然后下载boost文件(boost_1_78_0.zip来源)
以管理员身份打开并运行cmd
在C:\
中的MinFW文件夹中输入以下命令link
mklink /J C:\MinGW "C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64"
- 将 MinGW 添加到系统路径:
set PATH=%PATH%;C:\MinGW\bin
setx /M PATH "%PATH%"
- 检查你是否至少有 8.1.0 的 g++ 版本
g++ --version
安装boost的方法:
- 导航到创建的安装文件夹并解压缩 boost_1_78_0.zip 文件并将其提取到此文件夹中
- 在 CMD 中导航到 boost 文件夹
cd C:\install\boost_1_78_0
- 键入以下内容以创建用于构建和安装 boost 的目录
mkdir C:\boost-build
mkdir C:\install\boost_1_78_0\boost-build
mkdir C:\boost
- 设置boost.build(第二行准备b2,第三行用b2构建boost.build,第四行添加C:\boost-build\bin到你的session PATH变量)
cd C:\install\boost_1_78_0\tools\build
bootstrap.bat gcc
b2 --prefix="C:\boost-build" install
set PATH=%PATH%;C:\boost-build\bin
- 构建 boost(第一行导航到 boost 目录,第二行使用 b2 构建 boost 这可能需要一段时间)
cd C:\install\boost_1_78_0
b2 --build-dir="C:\install\boost_1_78_0\build" --build-type=complete --prefix="C:\boost" toolset=gcc install
补充说明:
这也适用于 boost 1.68.0,可能适用于其他版本,只需将 1_78_0 替换为 1_68_0。
最后你应该有如下三行:
...failed updating 72 targets...
...skipped 292 targets...
...updated 22164 targets...
如果您有一些失败和跳过的文件,那完全没问题。
我正在尝试正确安装 运行 PyGMO 的 boost。但是,我把它解压到一个目录后(没有使用git)。
在 运行ning bootstrap vc142
之后(我正在使用 VScode V1.63.2 并且我在 windows 上)。我收到此错误:
Building Boost.Build engine
LOCALAPPDATA=C:\Users\wojci\AppData\Local
could not find "vswhere"
Call_If_Exists "..\bin\VCVARS32.BAT"
###
### Using 'msvc' toolset.
###
其次是:
C:\Program Files\boost\boost_1_78_0\tools\build\src\engine>dir *.exe
Volume in drive C has no label.
C:\Program Files\boost\boost_1_78_0\tools\build\src\engine>copy /b .\b2.exe .\bjam.exe
The system cannot find the file specified.
Failed to build Boost.Build engine.
有人知道如何fix/work解决这个问题吗?
提前致谢
我找到了解决方案 here (git)
先决条件:
首先下载并安装 MinGW 安装程序 mingw-w64-install.exe(我从 Sourceforge 找到它)并确保使用 x86_64 架构。
然后下载boost文件(boost_1_78_0.zip来源)
以管理员身份打开并运行cmd
在C:\
中的MinFW文件夹中输入以下命令link
mklink /J C:\MinGW "C:\Program Files\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64"
- 将 MinGW 添加到系统路径:
set PATH=%PATH%;C:\MinGW\bin
setx /M PATH "%PATH%"
- 检查你是否至少有 8.1.0 的 g++ 版本
g++ --version
安装boost的方法:
- 导航到创建的安装文件夹并解压缩 boost_1_78_0.zip 文件并将其提取到此文件夹中
- 在 CMD 中导航到 boost 文件夹
cd C:\install\boost_1_78_0
- 键入以下内容以创建用于构建和安装 boost 的目录
mkdir C:\boost-build
mkdir C:\install\boost_1_78_0\boost-build
mkdir C:\boost
- 设置boost.build(第二行准备b2,第三行用b2构建boost.build,第四行添加C:\boost-build\bin到你的session PATH变量)
cd C:\install\boost_1_78_0\tools\build
bootstrap.bat gcc
b2 --prefix="C:\boost-build" install
set PATH=%PATH%;C:\boost-build\bin
- 构建 boost(第一行导航到 boost 目录,第二行使用 b2 构建 boost 这可能需要一段时间)
cd C:\install\boost_1_78_0
b2 --build-dir="C:\install\boost_1_78_0\build" --build-type=complete --prefix="C:\boost" toolset=gcc install
补充说明:
这也适用于 boost 1.68.0,可能适用于其他版本,只需将 1_78_0 替换为 1_68_0。
最后你应该有如下三行:
...failed updating 72 targets...
...skipped 292 targets...
...updated 22164 targets...
如果您有一些失败和跳过的文件,那完全没问题。