关于在Windows上使用g++构建的帮助
Help on build using g++ on Windows
我需要构建一个小项目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++编译器中,这样它就不会与主窗口一起打开控制台。
相关文章:
- C++为构建时间获取QDateTime的可靠方法
- 无法在 CLion 中构建 C++ 项目
- 函数向量_指针有不同的原型,我可以构建一个吗
- 如何使用ndk-build.cmd构建Android.so文件
- libssh 的函数在构建 libssh 时无法在 Qt 和 cmake 错误中找到
- 使用cmake从源代码构建MySQL连接器/C++失败(与以前的声明冲突)
- VSCode-有一个红色下划线,但程序构建和运行正确,并且出现配音错误
- 构建可组合有向图(扫描仪生成器的汤普森构造算法)
- 无法使用Qt Creator在Windows中构建yaml-cpp
- 构建一个由C和C++文件组成的库
- llvm构建器向基本块添加终止符
- FLTK 2.0构建和演示,适用于VS2019的2011年左右的代码库
- 如何跨平台将二进制资源构建到程序中?
- 将 OpenCV 与 CMAKE 中的项目一起构建为第三方库的正确方法
- 如何解决 Ninja c++ 构建和执行问题
- 使用 cmake 的 LLVM 构建在 tsan_libdispatch_mac.cc 期间失败; "Error: conflicting types for ..."
- CMake WxWidgets项目成功地在Linux上构建,但没有在Windows上构建
- 更改命令行 qt5 源代码构建配置的正确/快速方法
- 用CMake构建C++协议
- Mingw-64 在构建和安装后不会编译 openCV 代码