cmake如何使用mingw编译生成64位的文件
时间: 2024-04-29 22:26:55 浏览: 249
要使用CMake和MinGW编译生成64位文件,需要按照以下步骤操作:
1. 确保已经安装了64位版本的MinGW和CMake。
2. 在CMakeLists.txt文件中添加以下内容:
```
set(CMAKE_C_COMPILER x86_64-w64-mingw32-gcc)
set(CMAKE_CXX_COMPILER x86_64-w64-mingw32-g++)
```
这将指定CMake使用64位版本的MinGW编译器。
3. 添加以下内容:
```
set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++ -static")
```
这将指定编译器链接静态库。
4. 在命令行中运行以下命令:
```
cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-m64" -DCMAKE_C_FLAGS="-m64" ..
```
这将使用64位编译器生成Makefile。
5. 运行以下命令编译项目:
```
mingw32-make
```
6. 编译完成后,生成的文件将位于build文件夹中。
相关问题
windows下 使用 cmake + mingw64 编译 exe时,如何指定 exe 的图标文件
在 Windows 下,使用 CMake 和 MinGW64 编译 exe 文件时,可以通过修改链接器的命令行参数来指定 exe 文件的图标文件。
具体步骤如下:
1. 在 CMakeLists.txt 文件中添加以下代码:
```cmake
if(WIN32)
set(WIN_ICON "${CMAKE_CURRENT_SOURCE_DIR}/path/to/icon.ico")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-subsystem,windows,-mwindows,-lcomctl32 -Wl,--out-implib,lib${PROJECT_NAME}.a -Wl,--output-def,${PROJECT_NAME}.def -Wl,--enable-stdcall-fixup -Wl,--stack,0x00200000,--enable-auto-image-base,--no-demangle,--add-stdcall-alias,--kill-at")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-H${WIN_ICON}")
endif()
```
这里的 `WIN_ICON` 是指定的图标文件路径。
2. 使用 CMake 和 MinGW64 生成 Makefile。
3. 在命令行中进入到生成的 build 目录,执行 `mingw32-make` 命令进行编译。
编译完成后,生成的 exe 文件会带有指定的图标。
注意:这里使用的是 `-H` 选项来指定 exe 文件的图标,而不是 `-I` 选项,因为在 MinGW64 中,`-I` 选项已经被用于指定头文件路径了。
在Windows 10环境下,如何通过CMake和Mingw编译OpenCV库,并在QT项目中利用OpenGL和OpenCV库文件?
在Windows 10环境下,通过CMake和Mingw编译OpenCV库,并在QT项目中使用OpenGL和OpenCV库文件的过程,需要遵循一系列详细的步骤。首先,确保你已经安装了CMake、Mingw以及QT,并将它们的bin目录路径添加到了系统的Path环境变量中。这样,系统才能够识别这些工具和编译器。
参考资源链接:[QT环境下配置OpenCV3.4.0详细教程](https://wenku.csdn.net/doc/40mdguat6j?spm=1055.2569.3001.10343)
接下来,获取OpenCV的源代码,并解压到一个目录中。在这个目录里,创建一个新的文件夹用于存放构建生成的文件,例如叫做build。然后,打开命令行工具,切换到刚才创建的build目录,运行CMake-GUI工具。在CMake-GUI中,指定OpenCV源代码的路径和当前build目录的路径,点击Configure按钮。在配置选项中,确保WITH_OPENGL和WITH_QT选项被启用,WITH_IPP选项被禁用。根据个人安装的Mingw和QT路径,可能还需要手动设置CMAKE_C_COMPILER和CMAKE_CXX_COMPILER变量,分别指向mingw32-make.exe和mingw32-make.exe。配置完成后,点击Generate按钮生成Makefile。
之后,打开命令行,切换到build目录,运行命令`mingw32-make`来编译OpenCV。这个过程可能需要较长时间,具体取决于系统的配置和性能。编译成功后,执行`mingw32-make install`命令将库文件安装到指定位置。
安装完成后,你还需要在QT Creator中配置OpenCV项目。打开你的QT项目,进入项目设置,添加OpenCV库文件的路径到.pro文件中的INCLUDEPATH和LIBS变量。具体代码如下:
```pro
INCLUDEPATH +=
参考资源链接:[QT环境下配置OpenCV3.4.0详细教程](https://wenku.csdn.net/doc/40mdguat6j?spm=1055.2569.3001.10343)
阅读全文