您的位置:首页 > 编程语言 > C语言/C++

error LNK2019: 无法解析的外部符号 __imp___iob_func,该符号在函数 amqp_abort 中被引用,无法解析的外部符号 __imp_vfprintf

2017-11-21 18:49 4371 查看
error LNK2019: 无法解析的外部符号 __imp___iob_func,该符号在函数 amqp_abort 中被引用

error LNK2019: 无法解析的外部符号 __imp_vfprintf,该符号在函数 amqp_abort 中被引用

在用vs2017编译一个源码库是报错,查说是包含库的编译器版本低于当前编译版本,需要将包含库源码用vs2017重新编译,由于没有包含库的源码,此路不通。

然后查到说是stdin, stderr, stdout 这几个函数vs2015和以前的定义得不一样,所以报错。

解决方法呢,就是使用{*stdin,*stdout,*stderr}数组自己定义__iob_func()

加两行代码如下

#pragma comment(lib,"legacy_stdio_definitions.lib")
extern "C" { FILE __iob_func[3] = { *stdin,*stdout,*stderr }; }


编译通过
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ 编译器
相关文章推荐