C++ 数字Mars编译器(代码::块)无法打开文件';iostream&x27;

C++ 数字Mars编译器(代码::块)无法打开文件';iostream&x27;,c++,codeblocks,iostream,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%\..

我开始用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)) ===|

我看了其他的帖子,但是没有一个有用!有人知道如何解决这个问题吗?

我想这个文件是你编辑的<如果代码>BIN和
INCLUDE
位于同一行,则很可能不起作用-在
INCLUDE
之前插入新行:

BIN="%@P%\..\bin"
INCLUDE="%@P%\..\stlport\stlport";"%@P%\..\include";"%@P%\..\mfc\include";%INCLUDE%
;INCLUDE="%@P%\..\include";"%@P%\..\mfc\include";%INCLUDE%`
然后再试一次

另外,您是否下载并安装了STLport?因为DM的
iostream
头来自那里。同时检查stlport include,
“%@P%\..\stlport\stlport”
条目似乎有点可疑-取决于安装位置,它可能只是
“%@P%\..\stlport”
(即,检查
iostream
头是否真的在
C:\DM\stlport\stlport
中,或者仅仅在
C:\DM\stlport
中,或者甚至可能在
C:\DM\stlport\include
或类似的地方)

此外,根据我的经验,Digital Mars编译器可能有些棘手(例如,CMake AFAIK不支持),您可能希望尝试MinGW(GCC)编译器,它更为最新,并且可能更好地得到各种工具的支持


(或微软Visual Studio Express,它是Windows上的本机,随IDE一起提供)

很抱歉出现任何混淆,但INCLUDE出现在新的一行,在向帖子添加代码时,我未能解决此问题,虽然这不是问题,但我现在将解决此问题为了停止任何其他混淆,我尝试了MinGW(GCC)但这也不起作用。更新。同时检查stl端口的安装和位置。它已起作用!stl端口已提取到C:/dm/STLport而不是C:/dm/STLport/STLport!感谢您现在它工作正常!