Windows下使用CMake+MinGW静态编译发布.exe程序

来源:互联网 发布:植物生长算法 编辑:程序博客网 时间:2024/05/19 17:06

最近使用mingw编译了一份boost静态库,在CMake编译成.exe程序发布后,发现仍旧提示缺少DLL文件。提示缺失的DLL文件大概如下:

libgcc*.dlllibstdc++*.dlllibwinpthread-1.dll

经过简单摸索之后,终于找到了解决方法。

#需要在CMakeLists.txt添加以下内容#设置静态编译set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static")#链接静态库#链接boost静态库(project_Name为你的项目名,*分别代表库名、mingw版本号、boost库版本号,如:libboost_system-mgw72-mt-s-1_65_1.a)target_link_libraries(project_Name libboost_*-mgw*-mt-s-*.a)#链接gcc-g++静态库target_link_libraries(project_Name libgcc.a)target_link_libraries(project_Name libstdc++.a)#链接网络库(如需要)target_link_libraries(project_Name ws2_32)#链接线程库(必须放到最后)target_link_libraries(project_Name libpthread.a)
原创粉丝点击