LNK1181:无法打开输入文件“m.lib"

问题描述

在尝试安装某个 Python 地球物理工具包时,我收到此错误:

When trying to install a certain Python geophysical toolkit, I get this error:

LINK : 致命错误 LNK1181: 无法打开输入文件 'm.lib'

LINK : fatal error LNK1181: cannot open input file 'm.lib'

我相信这是因为我使用了 MSVC 的构建工具.在他们的 setup.py 我发现:

I believe it is due to my use of the MSVC's buildtools. In their setup.py I found:

setup(…, ext_modules=[ Extension(…, […], libraries=['m'], … ])

我需要在此 setup.py 和相关文件中进行哪些更改? - 才能使其正常工作.IIRC 有一个除 m 之外的库供我使用.

What do I need to change in this setup.py—and related files?—to make this work. IIRC there is a library other than m which I am to use.


解决方案

在 Windows 上,标准数学函数由 MSVCR 处理:

On Windows, the standard math functions are handled by MSVCR:

>>> from ctypes.util import find_library
>>> find_library('m')
'msvcr90.dll'

我没有安装 MSVC 来测试,但您只需要链接到运行时.尝试删除 'm'.

I don't have MSVC installed to test, but you just need to link against the runtime. Try removing 'm'.

相关文章