pybind11“Python是64位,选择编译器是32位”

问题描述 投票:2回答:2

我正在尝试在安装了VisualStudio 2015的Windows机器上编译pybind11。我还安装了python 3.5.3 64bit,以及cmake 2.8.12。我收到错误:

CMake Error at tools/FindPythonLibsNew.cmake:122 (message):
  Python config failure: Python is 64-bit, chosen compiler is 32-bit
Call Stack (most recent call first):
  tools/pybind11Tools.cmake:16 (find_package)
  CMakeLists.txt:28 (include)

我没有“选择”编译器为32位,并且查看CMakeLists.txt,我没有找到任何指定运行哪个编译器的地方。那么如何告诉pybind11 / cmake为64位编译?

visual-studio-2015 cmake pybind11
2个回答
3
投票

您应该像这样指定64位VS编译器:

cmake "/path/to/src/" -G"Visual Studio 14 2015 Win64"

否则,它默认选择32位。


1
投票

如果您使用Ninja生成器并且出现此错误,请确保在64位模式下运行VS Dev命令提示符:

VsDevCmd.bat arch=amd64 && cmake <options> ... 
© www.soinside.com 2019 - 2024. All rights reserved.