直接pacman -S cmake 安装的并很差用,直接下载windows版本的cmake. 好比安装在D:\\cmake下. 而后设置环境变量html
export PATH=D:/cmake/bin:$PATH c++
而后编辑一个 toolchain-mingw64.cmake文件:windows
SET(CMAKE_SYSTEM_NAME Windows)
SET(CMAKE_C_COMPILER x86_64-w64-mingw32-gcc)
SET(CMAKE_CXX_COMPILER x86_64-w64-mingw32-g++)
SET(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres)
SET(CMAKE_RANLIB x86_64-w64-mingw32-ranlib)ide
SET(CMAKE_ASM_YASM_COMPILER yasm)htm
保存后。it
接下来: cmake -G"Unix Makefiles" . -DCMAKE_TOOLCHAIN_FILE=toolchain-mingw64.cmake 就能够生成makefile文件.asm
注意上面的 toolchain-mingw64.cmake内容 这些变量可能要根据实际状况设置。class
还有个问题,mingw64生成的dll每每依赖libgccxxx.dll 和 libstdc++.dll, 如何不依赖,给 toolchain-mingw64.cmake加入下面的代码便可变量
SET(CMAKE_CXX_FLAGS "-static-libgcc -static-libstdc++ -static")
SET(CMAKE_C_FLAGS "-static-libgcc -static-libstdc++ -static")
SET(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "-static-libgcc -static-libstdc++ -static")gcc
SET(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "-static-libgcc -static-libstdc++ -static")
到此为止应该能帮你解决掉部分问题。