mingw32:所有编译的可执行文件都挂起
mingw32: all compiled executables hang
我刚刚安装了最新版本的mingw32,即使是helloworld c++程序也无法编译。
安装在默认的C:/MinGW目录中。我选择了使用mingw-get-gui安装的选项,并选择了左列上的"基本设置"选项卡,标记了用于安装的mingw32-base和mingw32-gcc-g++选项。然后我应用了更改并下载了所有文件。最后,我在windows的路径中添加了C:/MinGW/bin。
现在我创建了一个如下所示的文件:
test.cpp:
#include <iostream>
int main() {
std::cout << "hello world!" << std::endl;
return 0;
}
然后我用g++ test.cpp
进行编译
现在,这个问题有点难以诊断。当我执行输出.exe文件时,命令行只是挂起,没有输出,没有返回。如果我尝试使用ctrl-c取消执行,则不会发生任何事情。当我强行退出命令行,并试图删除a.exe时,windows告诉可执行文件当前已被系统打开,强制删除文件的唯一方法是使用FileASSASSIN。
有些注意事项,我安装了visualstudio12,但路径中没有任何与之相关的内容。我以前安装过cygwin64,但它已经被完全删除了。我从powershell、普通命令行或Console2运行它时也会得到同样的行为。谷歌建议我尝试将libstdc++与-static-libstdc++
静态链接,但没有成功。
此外,当使用调试符号编译,然后使用gdb a.exe
运行,然后运行start时,它也会挂起。
我没有办法在这里获取故障排除信息。有人有什么见解吗?
在@M.M的建议下,我发现avast防病毒软件是停止任何由mingw32制作的可执行文件的无声原因。这很令人费解,因为就在几个小时前,我还在命令行上运行visualstudio制作的可执行文件。
教训:如果你遇到意外行为,一定要尝试防病毒。
- 如何将不同的可执行文件合并到一个窗口框架中进行编码?像浏览器一样
- 如何使 windows 命令提示符在C++可执行文件上显示返回值?
- CMake:如何将库 A 链接到库 B,然后将可执行文件链接到库 A
- 我编写了代码将十进制分数转换为其二进制等效数.它编译得很好,但在执行时挂起
- 如何使字符串出现在编译的二进制可执行文件的开头?
- 程序在使用 system() 启动另一个可执行文件时停止
- 如何更改使用 CPack 安装的可执行文件的名称?
- 在Linux上使用Clang / OLLVM交叉编译helloworld Windows可执行文件时的问题
- CMake:我们可以为一组不形成可执行文件或库的特定文件指定包含目录吗?
- 如何将图像传入C++可执行文件并将输出图像存储在新目录中?
- 共享库 (.so) 没有扩展名的 Linux 可执行文件之间的区别?
- 如何在 linux 可执行文件中使用静态库
- 错误:当我从"WinDbg"打开可执行文件时,找不到符号文件。默认导出 ntdll 的符号.dll
- 编译的C可执行文件被Windows defender检测为病毒
- Linux 可执行文件通过 dlopen 在emplace_back崩溃打开共享库
- 向在C++中不起作用的可执行文件传递参数
- 大型可执行文件会导致调试器挂起
- mingw32:所有编译的可执行文件都挂起
- 使用C可执行文件中的c#库(dll)类挂在ghandle(^)上
- Visual Studio 2010 - MS C++ (CL) 编译的可执行文件在 Windows 2000 上不起作