数字火星编译器(Code :: Blocks)无法打开文件'iostream'

时间:2017-06-15 15:56:18

标签: c++ codeblocks iostream

我开始在Code :: Blocks中编码,我需要一个编译器,我在C:/ dm安装了Digital Mars并在Code:Blocks中选择它。 C:/ dm / bin的sc.ini如下所示:

    [Version]
version=7.51 Build 020

[Environment]
PATH=%PATH%;"%@P%\..\bin"
BIN="%@P%\..\bin"
INCLUDE="%@P%\..\stlport\stlport";"%@P%\..\include";"%@P%\..\mfc\include"
;%INCLUDE%
;INCLUDE="%@P%\..\include";"%@P%\..\mfc\include";%INCLUDE%
LIB="%@P%\..\lib";"%@P%\..\mfc\lib";%LIB%
HELP="%@P%\..\help"

但是在编译时我总是遇到这个错误:

||=== Build: Debug in Serevr (compiler: Digital Mars Compiler) ===|
||unable to open input file 'iostream'|
||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|

我查看了其他帖子但没人帮忙!有谁知道如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我认为该文件已由您编辑。如果在同一行,则BININCLUDE很可能无效 - 在INCLUDE之前插入换行符:

BIN="%@P%\..\bin"
INCLUDE="%@P%\..\stlport\stlport";"%@P%\..\include";"%@P%\..\mfc\include";%INCLUDE%
;INCLUDE="%@P%\..\include";"%@P%\..\mfc\include";%INCLUDE%`

再试一次。

另外,您下载并安装了STLport吗?由于iostream标题来自DM。还检查stlport include,"%@P%\..\stlport\stlport"条目似乎有点可疑 - 取决于你安装它的位置,它可能只有"%@P%\..\stlport"(即检查iostream标头是否真的在{{1}或者只是在C:\DM\stlport\stlport中,或者甚至在C:\DM\stlport或类似的地方)。

此外,根据我的经验,数字火星编译器可能有些棘手(例如CMake AFAIK不支持),您可能想尝试MinGW(GCC)编译器,它更新,可能更好地支持各种工具

(或MS Visual Studio Express,在Windows上本机并随IDE一起提供)