关于在Windows上使用g++构建的帮助

Help on build using g++ on Windows

本文关键字:g++ 构建 帮助 Windows      更新时间:2023-10-16

我需要构建一个小项目C++(它有win32代码)。它已经有了Makefile。我被告知要使用MinGW。我以前从未用过它。我下载并安装了最新的MinGW安装程序。

然后,我打开MinGW外壳并执行make。exe文件已创建。但当我尝试运行它时,我发现libgcc_s_dw2-1.dll不见了!为什么会出现此错误?exe不应该是自包含的并在任何地方运行吗?

更新
以下是来自Makefile的更多信息:

CC = g++ 
CCOPTIONS=-DWINDOWS -DFORCEINLINE -DMINGW -DSRTP_SUPPORT -D__EXPORT= -D_WIN32_WINNT=0x0501 -DNOMVS    
setup.exe: setup.o common.o 
    $(CC) -ggdb -g -O0 -o $@ setup.o common.o  -mno-cygwin -mwindows -lwsock32 -lws2_32 -lwinmm -lgdi32 -lcomctl32 -lmapi32 -lVfw32

exe是否应该是自包含的取决于您如何构建它。我们需要查看执行的命令,或者发布makefile。但是这个DLL似乎不是当前版本的MinGW的一部分。此外,请澄清您是否真的在cygwin下这样做,或者您是否错误地添加了标签。

编辑:谷歌搜索似乎与可怕的"官方"MinGW安装有关。删除它,并从下载暮光之龙构建http://tdm-gcc.tdragon.net然后完全重建。"官方"版本无论如何都是cr*p-我不知道为什么有人会使用它。

如果您要做的是使用MinGW的独立应用程序,则应将-static添加到链接选项中。

附带说明一下,如果您正在制作Win32应用程序,请将-mwindows选项添加到C++编译器中,这样它就不会与主窗口一起打开控制台。