MATFP windows编译
·
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、使用mingw
下载并安装mingw,这一步略过。安装后打开MSYS2 MINGW64
二、环境处理
1.安装开发环境
代码如下(示例):
pacman -Syu
pacman -S mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake git
2.安装MATFP依赖
代码如下(示例):
pacman -S mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake git
三、cmakelist处理
matfp\extern\geogram\cmake\platforms文件夹下,将Win64-gcc.cmake复制一份替换Windows-vs.cmake
新建build文件夹,在build文件夹下增加my_gcc.bat文件,文件内容如下:
@echo off
setlocal enabledelayedexpansion
:: 1. 获取 CMake 传给 C 编译器的所有参数
set "args=%*"
:: 2. 精准擦除导致 C 编译器报错的 /wd4251 字符串
set "args=!args:/wd4251=!"
set "args=!args:/wd"4251"=!"
:: 3. 调用真正的 MinGW gcc.exe 执行 C 语言编译
"D:\msys64\mingw64\bin\gcc.exe" !args!
注意:最后一行改为你自己的gcc.exe路径
在build文件夹下增加my_g++.bat文件,文件内容如下:
@echo off
setlocal enabledelayedexpansion
:: 1. 获取 CMake 传过来的所有编译参数
set "args=%*"
:: 2. 精准擦除导致报错的 /wd4251 字符串
set "args=!args:/wd4251=!"
set "args=!args:/wd"4251"=!"
:: 3. 调用真正的 MinGW g++.exe 执行编译
"D:\msys64\mingw64\bin\g++.exe" !args!
注意:最后一行改为你自己的g++.exe路径
在build文件夹下执行如下指令:
cmake -G "MinGW Makefiles" -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DGEOGRAM_WITH_MSVC=OFF -DCMAKE_C_COMPILER="/e/OpenSourceCode/MATFP/matfp/build/my_gcc.bat" -DCMAKE_CXX_COMPILER="/e/OpenSourceCode/MATFP/matfp/build/my_g++.bat" -DBUILD_SHARED_LIBS=ON ..
注意:如果不想让MATFP作为一个库,-DBUILD_SHARED_LIBS=ON这个去掉
执行如下指令编译:
mingw32-make
其它
如果是cmakelist相关的编译错误,执行如下指令清楚,避免重新下载依赖
rm -rf CMakeCache.txt CMakeFiles build.ninja rules.ninja cmake_install.cmake .cmake
更多推荐


所有评论(0)