错误LNK2019:函数“void __cdecl Padding(int)”中引用的未解析的外部符号___iob_func

时间:2014-09-23 23:42:17

标签: c++ visual-studio visual-studio-2015

使用FTDI API在Visual Studio 2012下编译和链接。

但在VS 2014下,它给出了:

Error LNK2019: unresolved external symbol ___iob_func referenced in function "void __cdecl Padding(int)"

标准库是否已更改?

1 个答案:

答案 0 :(得分:1)

是的,标准库已经改变,FTDI似乎并不关心 - 至少不是CDM2.12.18驱动程序版本。

问题在this question的答案中有描述。

takePicture()内的void __cdecl Padding(int) devcon.obj功能是罪魁祸首。它引用了ftd2xx.libstdinstdout中的一个,以宏的形式给出。这些宏的内容发生了变化。

由于我们并不期望从FTDI库中获得任何I / O,因此我们不妨提供最简单的实现:

stderr

如果你想要一个能够完成其应该做的事情的版本:

FILE* __cdecl _imp____iob_func() { return 0; }