在 Windows 上设置 Eclipse C++ 编译器而不自动安装或更改系统路径

Posted

技术标签:

【中文标题】在 Windows 上设置 Eclipse C++ 编译器而不自动安装或更改系统路径【英文标题】:Set up Eclipse C++ compiler without auto-install or altering System Path on Windows 【发布时间】:2010-02-18 19:02:06 【问题描述】:

我正在尝试在 Eclipse 上安装 C++ 编译器,但我无法更改 Path 变量,这台机器的权限有限。 Eclipse 显然运行良好,只是构建不正常,它抱怨。

我注意到的第一件事是对库文件 stdio.h 显示“未解决的包含”的警告

我在 Eclipse 的“Windows > Preferences > C/C++ > Environment”中添加了路径变量,并添加了一个名为“Path”的新环境变量,其中包含指向我的 minGW/bin 文件夹的路径,但无济于事。我也尝试将其设置为“用指定的替换本机环境变量”,但也没有改变。

构建错误说:

****  WARNING: The "Default" Configuration may not build  ****
****  because it uses the "MinGW GCC"  ****
****  tool-chain that is unsupported on this system.  ****

然后

(Cannot run program "make": Launching failed)

当然没有了。这是一个简单的 Hello World 测试,因此代码应该不是问题。我可以在 Eclipse 生成的“包含”区域中的文件夹下看到包含(D:\MinGW\binutils\lib),但是在 Eclipse 的“大纲”选项卡中单击它们会出现错误“未找到匹配的包含文件名字”。

【问题讨论】:

【参考方案1】:

看起来您正在尝试使用 Eclipse/CDT 和开发环境并使用 mingw 作为编译器工具链来构建一个简单的 hello world 程序。我现在能够在不修改我的系统路径环境变量的情况下让它工作。这就是我所做的:

我已经安装了带有 CDT 的 Eclipse 3.5 (Galileo) 已将 MinGW 安装到 C:\MinGW(我假设您已经完成了此操作)。确保安装了 mingw-make 组件(默认情况下未安装,我必须选中该框才能安装此组件)。 新建一个空的 makefile 项目,添加 main.c,编写 hello world 代码(正如你所说,这不是问题,所以我在这里跳过细节),添加一个名为“makefile”的新文件并填写.

我的 main.c 文件的内容

    #include   
    int main()  
      
        printf("Hello World!");  
        return 0;  
      

我的makefile的内容:

    all:  
        gcc -o HelloWorld.exe main.c 
打开项目属性;在 C/C++ Build 下取消选中“使用默认构建命令”并将构建命令更改为“mingw32-make”。 在“C/C++ Build/Environment”下添加一个新的 PATH 变量,路径中包含 C:\Mingw\bin 在“C/C++ 常规/路径和符号”下添加 C:\mingw\include 作为包含路径。

完成此操作后,我的项目成功构建并在我的项目中生成了一个 HelloWorld.exe 可执行文件。

另一个不需要将 PATH 变量添加到系统或项目属性或将包含路径添加到项目属性的选项是简单地为 makefile 中的命令提供完整路径信息。对于小型项目,这是可以管理的。这是一个示例生成文件:

makefile 的内容:

    all:  
        c:\mingw\bin\gcc -o HelloWorld.exe -I c:\mingw\include main.c 

当然,您还必须将构建命令从简单的“mingw32-make”更改为“C:\mingw\bin\mingw32-make”。

此方法的另一个缺点是 CDT 代码解析器将无法找到包含文件,因此您会在编辑器中收到警告。

【讨论】:

我的问题是我无法在电脑上安装任何东西,包括MinGW。那么是否有一个 MinGW 已经下载了所有内容,我可以插入到 eclipse 中?

以上是关于在 Windows 上设置 Eclipse C++ 编译器而不自动安装或更改系统路径的主要内容,如果未能解决你的问题,请参考以下文章

在路径中找不到 Eclipse g++:windows

当我尝试在远程 Linux 节点上更改 Eclipse 中的设置时,X 服务器崩溃

在 Windows 的 Eclipse C++ 中运行 Hello World 应用程序

在 Eclipse (C++) for Linux 中链接到 matlab 库

怎么设置eclipse能使编写C++时变量名自动补齐

怎么设置eclipse能使编写C++时变量名自动补齐