我正在使用 cygwin,当我用 gcc 编译 hello world 时,编译器不理解如何使用 std 命名空间(其中一些缺少),但是当我用 g++ 编译时,是的,它们可以工作。但是当我点击 helloworld.exe 时,它说 cygwin1.dll 丢失了。
有什么我可以做的吗?
“gcc”是 C 编译器 - 命名空间不是 C 语言的一部分。 “g++”是 C++ 编译器,因此它会理解命名空间。
no-cygwin
选项来生成依赖于 mingw 运行时而不是 cygwin 运行时的可执行文件(AFAIR,这会引入许可问题)。
cygwin1.dll 错误可能表示注册表问题、病毒或恶意软件。
不要下载cygwin1.dll。它可能是不合适的版本,或者只是不安全。 尝试重新安装 cygwin(或尝试 mingw32)。