无法解析的外部符号 _strtoll

最近在折腾一个Python库到windows的迁移,底层用了一些C依赖,各种不懂。
错误栈显示如下:
util.obj:errorLNK2019:无法解析的外部符号_strtoll,该符号在函数_read_problem中被引用
.\util.dll:fatalerrorLNK1120:1个无法解析的外部命令
NMAKE:fatalerrorU1077:“"C:\ProgramFiles\MicrosoftVisualStudio10.0\VC\BIN\cl.exe"”:返回代码“0x2”
报错的代码在这里:
x_space[j].index=(INT64)strtoll(idx,&endptr,10);
用的编译器是VS2010,Makefile是这么写的:
CXX=cl.exe
CFLAGS=/nologo/O2/EHsc/I./D_WIN32/D_CRT_SECURE_NO_DEPRECATE
TARGET=.
lib:util.c
$(CXX)$(CFLAGS)-LDutil.c/Iliblinear-Fe$(TARGET)\util-link-DEF:util.def
此前用过一次mingw,是能通过的。
求问怎么解决VS2010下的编译问题?
MYYA
浏览 780回答 2
2回答

慕村9548890

八成是你的环境变量设置问题,VS没找到标准库。确保你是使用VisualStudioCommandPrompt打开的命令行窗口,或者在执行命令前执行一下vcvarsall.bat,执行方法详见MSDN文档。

慕运维8079593

搬砖一下stackoverflow得到的答案:微软的标准C库并不包含strtoll()这样的将C的字符串转化为longlong型的函数,但微软提供了另一个替代品:_strtoi64()详细链接
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript