无法在 Netbeans 中编译单个 C++ 文件,但能够构建完整的项目

Unable to compile single C++ file in Netbeans, but able to build full project

当我右键单击并尝试编译文件时,在 Netbeans 中编译单个文件时遇到问题。我遇到了“Netbeans: cannot find include file <iostream>, also, unable to resolve identifier std, cout”中给出的其他问题并修复了所有其他问题。构建工作正常,但只有编译问题。

编译错误:

cd 'C:\Study Materials\C++\CPP Programs MP Compiled\Projects\collegeProject\collegeProject'
C:\MinGW\MSYS 1.0\bin\make.exe -f nbproject/Makefile-Debug.mk build/Debug/MinGW-Windows/FileHandling.o
Cannot run program "C:\MinGW\MSYS" (in directory "C:\Study Materials\C++\CPP Programs MP Compiled\Projects\collegeProject\collegeProject"): CreateProcess error=2, The system cannot find the file specified

构建日志(仅部分):

cd 'C:\Study Materials\C++\CPP Programs MP Compiled\Projects\collegeProject\collegeProject'
C:\MinGW\MSYS 1.0\bin\make.exe -f Makefile CONF=Debug
"/C/MinGW/MSYS 1.0/bin/make.exe" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make.exe[1]: Entering directory `/c/Study Materials/C++/CPP Programs MP Compiled/Projects/collegeProject/collegeProject'
"/C/MinGW/MSYS 1.0/bin/make.exe"  -f nbproject/Makefile-Debug.mk dist/Debug/MinGW-Windows/collegeproject.exe
make.exe[2]: Entering directory `/c/Study Materials/C++/CPP Programs MP Compiled/Projects/collegeProject/collegeProject'
mkdir -p build/Debug/MinGW-Windows
rm -f "build/Debug/MinGW-Windows/FileHandling.o.d"
g++    -c -g -std=c++11 -MMD -MP -MF "build/Debug/MinGW-Windows/FileHandling.o.d" -o build/Debug/MinGW-Windows/FileHandling.o FileHandling.cpp
mkdir -p build/Debug/MinGW-Windows
rm -f "build/Debug/MinGW-Windows/admin.o.d"
.
.
.

mkdir -p dist/Debug/MinGW-Windows
g++     -o dist/Debug/MinGW-Windows/collegeproject build/Debug/MinGW-Windows/FileHandling.o build/Debug/MinGW-Windows/admin.o build/Debug/MinGW-Windows/login.o build/Debug/MinGW-Windows/main.o build/Debug/MinGW-Windows/person.o build/Debug/MinGW-Windows/staff.o build/Debug/MinGW-Windows/student.o build/Debug/MinGW-Windows/subjects.o build/Debug/MinGW-Windows/utilities.o 
make.exe[2]: Leaving directory `/c/Study Materials/C++/CPP Programs MP Compiled/Projects/collegeProject/collegeProject'
make.exe[1]: Leaving directory `/c/Study Materials/C++/CPP Programs MP Compiled/Projects/collegeProject/collegeProject'

BUILD SUCCESSFUL (total time: 8s)

问题是MinGW路径“C:\MinGW\MSYS”中的space只是路径“C:\MinGW\MSYS 1.0的一部分。确保你在安装 MinGW 和 MSYS 的路径 中没有 spaces。

mingw.org/wiki/Getting_Started

MinGW Installation Notes

MinGW may have problems with paths containing spaces, and if not, usually other programs used with MinGW will experience problems with such paths. Thus, we strongly recommend that you do not install MinGW in any location with spaces in the path name reference. You should avoid installing into any directory or subdirectory having names like "Program Files" or "My Documents", etc.

另见 Netbeans and MinGW-w64