【发布时间】:2014-07-14 08:03:46
【问题描述】:
我在尝试#include iostream 时遇到了一些错误。我知道问题是 iostream,因为我的项目之前编译过,但是在包含 iostream 之后我有错误。
我正在尝试使用 iostream,因为 printf 似乎不起作用,我想使用 cout。
我使用的是 keil uvision 5,是的,我的文件保存为 main.cpp,但是我的项目中有 c 文件,但我认为这没关系。
有人有什么想法吗?
哎呀忘了包括错误:
STM324x9I-EVAL-MB1063\STM324x9I-EVAL-MB1063.axf: Error: L6218E: Undefined symbol __fread_bytes_avail (referred from ios.o).
STM324x9I-EVAL-MB1063\STM324x9I-EVAL-MB1063.axf: Error: L6218E: Undefined symbol mbsinit (referred from ios.o).
STM324x9I-EVAL-MB1063\STM324x9I-EVAL-MB1063.axf: Error: L6218E: Undefined symbol wmemmove (referred from ios.o).
这也是说:
error in include chain (__exception.h): non-const lvalue reference to type '__builtin_va_list' cannot bind to a value of unrelated type 'va_list' (aka 'std::__va_list')
error in include chain (ostream): explicit specialization of '_C_is_cout' after instantiation
我的主文件非常长。我知道很难说没有看到它,但我只是在寻找一个一般性的答案。为什么这些错误会出现在标准库文件中? std lib 文件中应该没有错误
【问题讨论】:
-
一个想法是,您可以向我们展示您的源代码,而不是强迫我们使用我们不完善的心理调试技能:-)
-
你也可以列出你的编译行。
-
如果
printf“似乎不起作用”,iostream 似乎不太可能做得更好;它可能在引擎盖下使用printf -
如果我理解您的问题,请纠正我,您正在尝试针对特定微控制器使用标准库,可能来自 STM32 系列。此设备是否嵌入标准输出或控制台?