【发布时间】:2017-01-22 03:08:59
【问题描述】:
我在 Windows 中有一个 MinGW 文件夹,我没有在环境变量中设置任何路径。当我运行以下命令时:
D:\toolchains\MinGW\bin>gcc.exe hw.c -o hw
我收到了这个错误:
gcc.exe: error: CreateProcess: No such file or directory
据我了解,这个问题是因为我没有将此路径添加到环境变量。如何在不将此路径添加到环境变量的情况下解决此问题,因为我打算从 Python 脚本运行此命令。
【问题讨论】:
-
您只需调用
D:\toolchains\MinGW\bin\gcc.exe,而不是调用gcc.exe。只要您提供 gcc 的完整路径,您甚至不需要在 MinGW 安装目录中。 -
@TimF 当我这样做时,我得到了同样的错误:(
-
好吧对不起,那是 gcc 没有找到 hw.c。所以无论你是从 hw.c 所在的文件夹执行这个命令,还是给出 hw.c 的绝对或相对路径。以
D:\toolchains\MinGW\bin\gcc.exe D:\path\to\hw.c -o hw为例 -
这听起来像是一个不完整的安装。编译器前端运行一些其他可执行文件,其中一些位于相关(但不相同)目录中。我可以通过强制它找不到与其目录相关的任何内容来重现错误消息,只需将驱动器映射到 bin 并从该驱动器的根目录运行它。你能举一个运行编译器工作的例子吗?
-
也就是说,尽管无论搜索路径如何运行编译器都可以正常工作,但如果 MinGW bin 目录不在您的
PATH中,则链接器可能会混淆并失败。所以在实践中你需要PATH。