gptoolbox matlab工具箱cmake 调试笔记

一、问题描述

起因:在matlab中运行Offset surface of triangle mesh in matlab的时候报错:

不支持将脚本 signed_distance 作为函数执行:
E:\MATLAB_File\gptoolbox\mex\signed_distance.m>
出错 offset_bunny (第 22 行)
D = signed_distance(BC,V,F);

二、查找解决方案

官网答疑STL-offset issue #44中说

alecjacobson commented on Jan 3, 2018
This function is needs to be compiled. Travel to the mex/ folder and checkout the README there.
这个函数是需要编译的。前往 mex/ 文件夹并在那里查看README文件。
It might take a little effort to compile these on Windows, but you could have a look at compile_gptoolbox.
在 Windows 上编译这些内容可能需要一些努力,但您可以查看 compile_gptoolbox .
You’ll definitely need to install libigl and make sure those are properly included.
您肯定需要安装 libigl 并确保正确包含这些内容。

翻到gptoolbox/mex/,README中这样写:

I’ve abandoned trying to build a “pure-matlab” build system. I now use cmake. So the build routine is:
我已经放弃了构建“纯matlab”构建系统的尝试。我现在使用 cmake。因此,构建例程为:

所以要想用signed_distance就必须使用cmake构建,cmake好久不用,要重新学了!!!-_-

很久之前配置的时候用的是cmake的gui界面,这次以为要重新学了,实际上不用!!!直接在cmd中输入cmake指令就可以啦,思维转变受此博文启发Windows下通过CMake编译项目(2种方法)。

在这里插入图片描述
简单好用的cmd界面

在这里插入图片描述
超难用的cmake gui。。。

三、解决过程

1.官网编译教程原文

Compiling (mexing) 编译 (mexing)
I’ve abandoned trying to build a “pure-matlab” build system. I now use cmake. So the build routine is:
我已经放弃了构建“纯matlab”构建系统的尝试。我现在使用 cmake。因此,构建例程为:
bash:

mkdir build 
cd build
cmake ..
make

powershell (or cmd):

mkdir build && cd build
cmake ..
cmake --build . --config Release

This will output the mex functions in this (mex/) directory.
这将输出此 ( mex/ ) 目录中的 mex 函数。

CMake’s FindMatlab.cmake is not very good. You might have to do something like:
CMake的 FindMatlab.cmake 不是很好。您可能需要执行以下操作:

cmake ../ -DMatlab_ROOT_DIR=/apps/matlab-R2019b/
  • 注意:
  • cmake ..是编译上层目录的源码;
  • cmake --build .是在本目录下(.)生成可执行文件。此处的build是命令,与建的文件夹名无关。
  • 我是windows 10, 用的cmd。

2.编译过程

编译过程总计约2个小时。

输入cmake…后,是漫长的等待。。。

官网介绍构建项目所需的依赖有:

Dependencies 依赖
Nearly all of the functions depend on stl, Eigen and libigl. Beyond that some may depend on CGAL, Embree, and El Topo. The cmake … command above should take care of downloading these dependencies into gptoolbox/mex/external/ using vcpkg (including vcpkg itself).
几乎所有的函数都依赖于 stl、Eigen 和 libigl。除此之外,有些人可能依赖于 CGAL、Embree 和 El Topo。上面 cmake … 的命令应该负责下载这些依赖项以 gptoolbox/mex/external/ 使用 vcpkg(包括 vcpkg 本身)。

You may already have vcpgk installed in your system. In order to use it, call cmake with additional parameter on configuration step, pointing at your vcpgk executable:
您的系统中可能已经安装了 vcpgk。要使用它,请在配置步骤中使用附加参数调用 cmake,指向您的 vcpgk 可执行文件:
cmake .. -D
TODO: 待办:
As soon as libigl is updated to 2.4.0 in vcpkg (see microsoft/vcpkg#26029), we could switch to vcpkg dependency management also regarding to libigl.
一旦 libigl 在 vcpkg 中更新到 2.4.0(请参阅 microsoft/vcpkg#26029 ),我们就可以切换到 vcpkg 依赖项管理,也与 libigl 有关。

指令cmake..产生的所有日志附在最后面了。

(base) D:\E20220227\CurvedLayerSlicing>cmake --version
cmake version 3.26.0-rc6

CMake suite maintained and supported by Kitware (kitware.com/cmake).

(base) D:\E20220227\CurvedLayerSlicing>E:
(base) E:\>cd E:\MATLAB_File\gptoolbox
(base) E:\MATLAB_File\gptoolbox>cd mex
(base) E:\MATLAB_File\gptoolbox\mex>    mkdir build && cd build
(base) E:\MATLAB_File\gptoolbox\mex\build>    cmake ..
-- Building for: Visual Studio 16 2019
-- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19045.
-- The C compiler identification is MSVC 19.29.30148.0
-- The CXX compiler identification is MSVC 19.29.30148.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test COMPILER_SUPPORTS_MARCH_NATIVE
-- Performing Test COMPILER_SUPPORTS_MARCH_NATIVE - Failed
-- MSVC -> forcing use of statically-linked runtime.
-- Found Git: C:/Program Files/Git/cmd/git.exe (found version "2.40.0.windows.1")
-- vcpkg was not found in system and will be installed to E:/MATLAB_File/gptoolbox/mex/external/vcpkg ...
Cloning into 'E:/MATLAB_File/gptoolbox/mex/external/vcpkg'...
Updating files: 100% (11435/11435), done.
Downloading https://github.com/microsoft/vcpkg-tool/releases/download/2024-06-10/vcpkg.exe -> E:\MATLAB_File\gptoolbox\mex\external\vcpkg\vcpkg.exe (using IE proxy: 127.0.0.1:7890)... done.
Validating signature... done.

vcpkg package management program version 2024-06-10-02590c430e4ed9215d27870138c2e579cc338772

See LICENSE.txt for license information.
-- Running vcpkg install
A suitable version of cmake was not found (required v3.29.2) Downloading portable cmake 3.29.2...
Downloading cmake...
https://github.com/Kitware/CMake/releases/download/v3.29.2/cmake-3.29.2-windows-i386.zip->E:\MATLAB_File\gptoolbox\mex\external\vcpkg\downloads\cmake-3.29.2-windows-i386.zip
Downloading https://github.com/Kitware/CMake/releases/download/v3.29.2/cmake-3.29.2-windows-i386.zip
Extracting cmake...
Detecting compiler hash for triplet x64-windows...
-- Automatically setting %HTTP(S)_PROXY% environment variables to "127.0.0.1:7890".
A suitable version of powershell-core was not found (required v7.2.16) Downloading portable powershell-core 7.2.16...
Downloading powershell-core...
https://github.com/PowerShell/PowerShell/releases/download/v7.2.16/PowerShell-7.2.16-win-x64.zip->E:\MATLAB_File\gptoolbox\mex\external\vcpkg\downloads\PowerShell-7.2.16-win-x64.zip
Downloading https://github.com/PowerShell/PowerShell/releases/download/v7.2.16/PowerShell-7.2.16-win-x64.zip
Extracting powershell-core...
Compiler found: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/cl.exe
The following packages will be built and installed:
    blas:x64-windows@2023-04-14#1
    lapack:x64-windows@2023-06-10#2
  * lapack-reference[blas-select,core,noblas]:x64-windows@3.11.0#6
  * openblas:x64-windows@0.3.27#1
  * vcpkg-cmake:x64-windows@2024-04-23
  * vcpkg-cmake-config:x64-windows@2024-05-23
  * vcpkg-gfortran:x64-windows@3#3
Additional packages (*) will be modified to complete this operation.
A suitable version of 7zip was not found (required v24.6.0) Downloading portable 7zip 24.6.0...
Downloading 7zip...
https://github.com/ip7z/7zip/releases/download/24.06/7z2406-extra.7z->E:\MATLAB_File\gptoolbox\mex\external\vcpkg\downloads\7z2406-extra.7z
Downloading https://github.com/ip7z/7zip/releases/download/24.06/7z2406-extra.7z
Extracting 7zip...
Restored 0 package(s) from C:\Users\26735\AppData\Local\vcpkg\archives in 704 us. Use --debug to see more details.
Installing 1/7 vcpkg-cmake:x64-windows@2024-04-23...
Building vcpkg-cmake:x64-windows@2024-04-23...
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-cmake_x64-windows/share/vcpkg-cmake/vcpkg_cmake_configure.cmake
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-cmake_x64-windows/share/vcpkg-cmake/vcpkg_cmake_build.cmake
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-cmake_x64-windows/share/vcpkg-cmake/vcpkg_cmake_install.cmake
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-cmake_x64-windows/share/vcpkg-cmake/vcpkg-port-config.cmake
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-cmake_x64-windows/share/vcpkg-cmake/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 123 ms.
Elapsed time to handle vcpkg-cmake:x64-windows: 257 ms
vcpkg-cmake:x64-windows package ABI: 2822b17c008535651f0b50dd44b9846d7fa42d83da855e03e43e458fbe8da15f
Installing 2/7 vcpkg-cmake-config:x64-windows@2024-05-23...
Building vcpkg-cmake-config:x64-windows@2024-05-23...
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-cmake-config_x64-windows/share/vcpkg-cmake-config/vcpkg_cmake_config_fixup.cmake
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-cmake-config_x64-windows/share/vcpkg-cmake-config/vcpkg-port-config.cmake
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-cmake-config_x64-windows/share/vcpkg-cmake-config/copyright
-- Skipping post-build validation due to VCPKG_POLICY_EMPTY_PACKAGE
Stored binaries in 1 destinations in 42.5 ms.
Elapsed time to handle vcpkg-cmake-config:x64-windows: 137 ms
vcpkg-cmake-config:x64-windows package ABI: 6a9ebe9a572a5927e8c864d4c75db500f00152c83d69a5f62dc7cb687aaf0a65
Installing 3/7 openblas:x64-windows@0.3.27#1...
Building openblas:x64-windows@0.3.27#1...
-- Downloading https://github.com/OpenMathLib/OpenBLAS/archive/v0.3.27.tar.gz -> OpenMathLib-OpenBLAS-v0.3.27.tar.gz...
-- Extracting source E:/MATLAB_File/gptoolbox/mex/external/vcpkg/downloads/OpenMathLib-OpenBLAS-v0.3.27.tar.gz
-- Applying patch uwp.patch
-- Applying patch fix-redefinition-function.patch
-- Applying patch install-tools.patch
-- Applying patch gcc14.patch
-- Using source at E:/MATLAB_File/gptoolbox/mex/external/vcpkg/buildtrees/openblas/src/v0.3.27-2f0a3701cf.clean
-- Downloading https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/download/SP_5380_5361/strawberry-perl-5.38.0.1-64bit-portable.zip -> strawberry-perl-5.38.0.1-64bit-portable.zip...
-- Found external ninja('1.10.2').
-- Configuring x64-windows
-- Building x64-windows-dbg
-- Building x64-windows-rel
CMake Warning at scripts/cmake/vcpkg_copy_pdbs.cmake:44 (message):
  Could not find a matching pdb file for:

      E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/openblas_x64-windows/bin/openblas.dll
      E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/openblas_x64-windows/debug/bin/openblas.dll

Call Stack (most recent call first):
  ports/openblas/portfile.cmake:74 (vcpkg_copy_pdbs)
  scripts/ports.cmake:191 (include)


-- Fixing pkgconfig file: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/openblas_x64-windows/lib/pkgconfig/openblas.pc
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/msys/x86_64/msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst;https://repo.msys2.org/msys/x86_64/msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/msys/x86_64/msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/msys/x86_64/msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/msys/x86_64/msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst;https://mirror.selfnet.de/msys2/msys/x86_64/msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst -> msys2-msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst...
-- Using msys root at E:/MATLAB_File/gptoolbox/mex/external/vcpkg/downloads/tools/msys2/1e74ca60daa10104
-- Fixing pkgconfig file: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/openblas_x64-windows/debug/lib/pkgconfig/openblas.pc
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/openblas_x64-windows/share/openblas/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 419 ms.
Elapsed time to handle openblas:x64-windows: 8.3 min
openblas:x64-windows package ABI: b20b0db24ea4cb1966cb06b42b4bae2bc4afacf2352f7646bd575d9be898885f
Installing 4/7 blas:x64-windows@2023-04-14#1...
Building blas:x64-windows@2023-04-14#1...
-- Skipping post-build validation due to VCPKG_POLICY_EMPTY_PACKAGE
Stored binaries in 1 destinations in 35.7 ms.
Elapsed time to handle blas:x64-windows: 180 ms
blas:x64-windows package ABI: b7450f32051708abad8c4f19fd83829bd389128cc1e1db033c973daa88e85148
Installing 5/7 vcpkg-gfortran:x64-windows@3#3...
Building vcpkg-gfortran:x64-windows@3#3...
-- The Fortran compiler identification is unknown
-- No Fortran compiler found on the PATH. Using MinGW gfortran!
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-fortran-14.1.0-3-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-fortran-14.1.0-3-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-fortran-14.1.0-3-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-fortran-14.1.0-3-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-fortran-14.1.0-3-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-fortran-14.1.0-3-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-gcc-fortran-14.1.0-3-any.pkg.tar.zst...
-- Using cached msys2-msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst.
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-14.1.0-3-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-14.1.0-3-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-14.1.0-3-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-14.1.0-3-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-14.1.0-3-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-14.1.0-3-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-gcc-14.1.0-3-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-libgfortran-14.1.0-3-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-libgfortran-14.1.0-3-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-libgfortran-14.1.0-3-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-libgfortran-14.1.0-3-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-libgfortran-14.1.0-3-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-libgfortran-14.1.0-3-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-gcc-libgfortran-14.1.0-3-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-binutils-2.42-2-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-binutils-2.42-2-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-binutils-2.42-2-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-binutils-2.42-2-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-binutils-2.42-2-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-binutils-2.42-2-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-binutils-2.42-2-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-crt-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-crt-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-crt-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-crt-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-crt-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-crt-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-crt-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-libs-14.1.0-3-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-libs-14.1.0-3-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-libs-14.1.0-3-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-libs-14.1.0-3-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-libs-14.1.0-3-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-gcc-libs-14.1.0-3-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-gcc-libs-14.1.0-3-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-gmp-6.3.0-2-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-gmp-6.3.0-2-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-gmp-6.3.0-2-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gmp-6.3.0-2-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gmp-6.3.0-2-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-gmp-6.3.0-2-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-gmp-6.3.0-2-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-isl-0.26-1-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-isl-0.26-1-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-isl-0.26-1-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-isl-0.26-1-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-isl-0.26-1-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-isl-0.26-1-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-isl-0.26-1-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-libiconv-1.17-4-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-libiconv-1.17-4-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-libiconv-1.17-4-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-libiconv-1.17-4-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-libiconv-1.17-4-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-libiconv-1.17-4-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-libiconv-1.17-4-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-mpc-1.3.1-2-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-mpc-1.3.1-2-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-mpc-1.3.1-2-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-mpc-1.3.1-2-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-mpc-1.3.1-2-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-mpc-1.3.1-2-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-mpc-1.3.1-2-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-mpfr-4.2.1-2-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-mpfr-4.2.1-2-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-mpfr-4.2.1-2-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-mpfr-4.2.1-2-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-mpfr-4.2.1-2-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-mpfr-4.2.1-2-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-mpfr-4.2.1-2-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-windows-default-manifest-6.4-4-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-windows-default-manifest-6.4-4-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-windows-default-manifest-6.4-4-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-windows-default-manifest-6.4-4-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-windows-default-manifest-6.4-4-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-windows-default-manifest-6.4-4-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-windows-default-manifest-6.4-4-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-winpthreads-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-winpthreads-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-winpthreads-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-winpthreads-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-winpthreads-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-winpthreads-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-winpthreads-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-zlib-1.3.1-1-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-zlib-1.3.1-1-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-zlib-1.3.1-1-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-zlib-1.3.1-1-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-zlib-1.3.1-1-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-zlib-1.3.1-1-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-zlib-1.3.1-1-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-zstd-1.5.6-2-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-zstd-1.5.6-2-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-zstd-1.5.6-2-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-zstd-1.5.6-2-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-zstd-1.5.6-2-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-zstd-1.5.6-2-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-zstd-1.5.6-2-any.pkg.tar.zst...
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst...
-- Using cached msys2-mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst.
-- Downloading https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://repo.msys2.org/mingw/mingw64/mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirror.yandex.ru/mirrors/msys2/mingw/mingw64/mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirrors.tuna.tsinghua.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirrors.ustc.edu.cn/msys2/mingw/mingw64/mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst;https://mirror.selfnet.de/msys2/mingw/mingw64/mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst -> msys2-mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst...
-- Using cached msys2-mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst.
-- Using msys root at E:/MATLAB_File/gptoolbox/mex/external/vcpkg/downloads/tools/msys2/259fff2112122ad2
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/vcpkg-gfortran_x64-windows/share/vcpkg-gfortran/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 513 ms.
Elapsed time to handle vcpkg-gfortran:x64-windows: 2 min
vcpkg-gfortran:x64-windows package ABI: 07dd43799429b2ce24f04b534dd1e093f06c905ec91b0b0456f82375264e63de
Installing 6/7 lapack-reference[blas-select,core,noblas]:x64-windows@3.11.0#6...
Building lapack-reference[blas-select,core,noblas]:x64-windows@3.11.0#6...
-- Downloading https://github.com/Reference-LAPACK/lapack/archive/v3.11.0.tar.gz -> Reference-LAPACK-lapack-v3.11.0.tar.gz...
-- Extracting source E:/MATLAB_File/gptoolbox/mex/external/vcpkg/downloads/Reference-LAPACK-lapack-v3.11.0.tar.gz
-- Applying patch cmake-config.patch
-- Applying patch lapacke.patch
-- Applying patch fix_prefix.patch
-- Using source at E:/MATLAB_File/gptoolbox/mex/external/vcpkg/buildtrees/lapack-reference/src/v3.11.0-6ae738f586.clean
-- The Fortran compiler identification is unknown
-- No Fortran compiler found on the PATH. Using MinGW gfortran!
-- Using cached msys2-mingw-w64-x86_64-gcc-fortran-14.1.0-3-any.pkg.tar.zst.
-- Using cached msys2-msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-gcc-14.1.0-3-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-gcc-libgfortran-14.1.0-3-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-binutils-2.42-2-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-crt-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-gcc-libs-14.1.0-3-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-gmp-6.3.0-2-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-isl-0.26-1-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-libiconv-1.17-4-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-mpc-1.3.1-2-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-mpfr-4.2.1-2-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-windows-default-manifest-6.4-4-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-winpthreads-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-zlib-1.3.1-1-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-zstd-1.5.6-2-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-gettext-runtime-0.22.5-2-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-headers-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst.
-- Using cached msys2-mingw-w64-x86_64-libwinpthread-git-12.0.0.r32.gf977e1c38-1-any.pkg.tar.zst.
-- Using msys root at E:/MATLAB_File/gptoolbox/mex/external/vcpkg/downloads/tools/msys2/259fff2112122ad2
-- Found external ninja('1.10.2').
-- Configuring x64-windows
-- Building x64-windows-dbg
-- Building x64-windows-rel
-- Fixing pkgconfig file: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/lapack-reference_x64-windows/lib/pkgconfig/lapack.pc
-- Using cached msys2-mingw-w64-x86_64-pkgconf-1~2.2.0-1-any.pkg.tar.zst.
-- Using cached msys2-msys2-runtime-3.5.3-3-x86_64.pkg.tar.zst.
-- Using msys root at E:/MATLAB_File/gptoolbox/mex/external/vcpkg/downloads/tools/msys2/1e74ca60daa10104
-- Fixing pkgconfig file: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/lapack-reference_x64-windows/debug/lib/pkgconfig/lapack.pc
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/lapack-reference_x64-windows/share/lapack-reference/usage
-- Installing: E:/MATLAB_File/gptoolbox/mex/external/vcpkg/packages/lapack-reference_x64-windows/share/lapack-reference/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 2.1 s.
Elapsed time to handle lapack-reference:x64-windows: 16 min
lapack-reference:x64-windows package ABI: 268b5a35a37f4211ef425a9b7f574083bd7cb92b74b1105d8b4affc7a23c5efb
Installing 7/7 lapack:x64-windows@2023-06-10#2...
Building lapack:x64-windows@2023-06-10#2...
-- Skipping post-build validation due to VCPKG_POLICY_EMPTY_PACKAGE
Stored binaries in 1 destinations in 52.7 ms.
Elapsed time to handle lapack:x64-windows: 264 ms
lapack:x64-windows package ABI: 5ca2491e6660c438b1636aa8d6735f0e79f1e47a90497269ec908e6702170730
Total install time: 26 min
blas provides pkg-config modules:

  # Implementation of BLAS
  blas

lapack provides pkg-config modules:

  # Implementation of LAPACK
  lapack

-- Running vcpkg install - done
-- Found Matlab: C:/Program Files/MATLAB/R2021b/extern/include (found version "9.11") found components: MEX_COMPILER MX_LIBRARY ENG_LIBRARY
-- Downloading and finding libigl...
-- Creating target: igl::core (igl_core)
-- Third-party: creating target 'Eigen3::Eigen'
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - not found
-- Found Threads: TRUE
-- Creating target: igl::embree (igl_embree)
-- Third-party: creating target 'embree::embree'
-- Detecting default ISA...
-- Detected default ISA: SSE2
-- Creating target: igl::xml (igl_xml)
-- Third-party: creating target 'tinyxml2::tinyxml2'
-- Creating target: igl_copyleft::cgal (igl_copyleft_cgal)
-- Third-party: creating target 'CGAL::CGAL'
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:8 (FetchContent_Declare)
  build/_deps/libigl-src/cmake/igl/modules/copyleft/cgal.cmake:17 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:32 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:40 (_igl_include_full)
  build/_deps/libigl-src/cmake/libigl.cmake:27 (igl_include_optional)
  build/_deps/libigl-src/CMakeLists.txt:151 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Third-party: downloading gmp + mpfr
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  build/_deps/libigl-src/cmake/recipes/external/gmp_mpfr.cmake:9 (FetchContent_Declare)
  build/_deps/libigl-src/cmake/recipes/external/gmp.cmake:7 (include)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:32 (include)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:58 (cgal_import_target)
  build/_deps/libigl-src/cmake/igl/modules/copyleft/cgal.cmake:17 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:32 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:40 (_igl_include_full)
  build/_deps/libigl-src/cmake/libigl.cmake:27 (igl_include_optional)
  build/_deps/libigl-src/CMakeLists.txt:151 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  build/_deps/libigl-src/cmake/recipes/external/gmp_mpfr.cmake:16 (FetchContent_Declare)
  build/_deps/libigl-src/cmake/recipes/external/gmp.cmake:7 (include)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:32 (include)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:58 (cgal_import_target)
  build/_deps/libigl-src/cmake/igl/modules/copyleft/cgal.cmake:17 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:32 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:40 (_igl_include_full)
  build/_deps/libigl-src/cmake/libigl.cmake:27 (igl_include_optional)
  build/_deps/libigl-src/CMakeLists.txt:151 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found GMP: E:/MATLAB_File/gptoolbox/mex/build/_deps/gmp-src/include
-- Third-party: downloading gmp + mpfr
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  build/_deps/libigl-src/cmake/recipes/external/gmp_mpfr.cmake:9 (FetchContent_Declare)
  build/_deps/libigl-src/cmake/recipes/external/mpfr.cmake:11 (include)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:33 (include)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:58 (cgal_import_target)
  build/_deps/libigl-src/cmake/igl/modules/copyleft/cgal.cmake:17 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:32 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:40 (_igl_include_full)
  build/_deps/libigl-src/cmake/libigl.cmake:27 (igl_include_optional)
  build/_deps/libigl-src/CMakeLists.txt:151 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  build/_deps/libigl-src/cmake/recipes/external/gmp_mpfr.cmake:16 (FetchContent_Declare)
  build/_deps/libigl-src/cmake/recipes/external/mpfr.cmake:11 (include)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:33 (include)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:58 (cgal_import_target)
  build/_deps/libigl-src/cmake/igl/modules/copyleft/cgal.cmake:17 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:32 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:40 (_igl_include_full)
  build/_deps/libigl-src/cmake/libigl.cmake:27 (igl_include_optional)
  build/_deps/libigl-src/CMakeLists.txt:151 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found MPFR: E:/MATLAB_File/gptoolbox/mex/build/_deps/mpfr-src/include
-- Third-party: creating targets 'Boost::boost'...
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.26/Modules/FetchContent.cmake:1282 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  build/_deps/boost-cmake-src/CMakeLists.txt:10 (FetchContent_Declare)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Fetching Boost
-- Fetching Boost - done
-- Boost found: 1.71.0 E:/MATLAB_File/gptoolbox/mex/build/_deps/boost-src
-- Looking for __linux__
-- Looking for __linux__ - not found
-- Looking for _WIN32
-- Looking for _WIN32 - found
-- Looking for __APPLE__
-- Looking for __APPLE__ - not found
-- Looking for __ANDROID__
-- Looking for __ANDROID__ - not found
-- Looking for __FreeBSD__
-- Looking for __FreeBSD__ - not found
-- Looking for _M_IX86
-- Looking for _M_IX86 - not found
-- Looking for __GNUC__
-- Looking for __GNUC__ - not found
-- The ASM_MASM compiler identification is MSVC
-- Found assembler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.29.30133/bin/Hostx64/x64/ml64.exe
-- Found BZip2: C:/Users/26735/anaconda3/Library/lib/bzip2.lib (found version "1.0.8")
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found
-- Found ZLIB: C:/Users/26735/anaconda3/Library/lib/z.lib (found version "1.2.12")
-- Found the following ICU libraries:
--   uc (required): C:/Users/26735/anaconda3/Library/lib/icuuc.lib
--   dt (required): C:/Users/26735/anaconda3/Library/lib/icudt.lib
--   i18n (required): C:/Users/26735/anaconda3/Library/lib/icuin.lib
-- Found ICU: C:/Users/26735/anaconda3/Library/include (found version "58.2")
-- Found iconv library: C:/Users/26735/anaconda3/Library/lib/iconv.lib
-- Visual Leak Detector (VLD) is not found.
-- Using header-only CGAL
CMake Warning (dev) at external/vcpkg/scripts/buildsystems/vcpkg.cmake:857 (_find_package):
  Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
  Run "cmake --help-policy CMP0074" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  CMake variable GMP_ROOT is set to:

    E:/MATLAB_File/gptoolbox/mex/build/_deps/libigl-build/GMP

  For compatibility, CMake is ignoring the variable.
Call Stack (most recent call first):
  build/_deps/cgal-src/cmake/modules/CGAL_SetupGMP.cmake:24 (find_package)
  build/_deps/cgal-src/cmake/modules/CGAL_SetupCGALDependencies.cmake:37 (include)
  build/_deps/cgal-src/lib/cmake/CGAL/CGALConfig.cmake:168 (include)
  build/_deps/cgal-src/CGALConfig.cmake:6 (include)
  external/vcpkg/scripts/buildsystems/vcpkg.cmake:857 (_find_package)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:55 (find_package)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:58 (cgal_import_target)
  build/_deps/libigl-src/cmake/igl/modules/copyleft/cgal.cmake:17 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:32 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:40 (_igl_include_full)
  build/_deps/libigl-src/cmake/libigl.cmake:27 (igl_include_optional)
  build/_deps/libigl-src/CMakeLists.txt:151 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at external/vcpkg/scripts/buildsystems/vcpkg.cmake:857 (_find_package):
  Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
  Run "cmake --help-policy CMP0074" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  CMake variable MPFR_ROOT is set to:

    E:/MATLAB_File/gptoolbox/mex/build/_deps/libigl-build/MPFR

  For compatibility, CMake is ignoring the variable.
Call Stack (most recent call first):
  build/_deps/cgal-src/cmake/modules/CGAL_SetupGMP.cmake:25 (find_package)
  build/_deps/cgal-src/cmake/modules/CGAL_SetupCGALDependencies.cmake:37 (include)
  build/_deps/cgal-src/lib/cmake/CGAL/CGALConfig.cmake:168 (include)
  build/_deps/cgal-src/CGALConfig.cmake:6 (include)
  external/vcpkg/scripts/buildsystems/vcpkg.cmake:857 (_find_package)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:55 (find_package)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:58 (cgal_import_target)
  build/_deps/libigl-src/cmake/igl/modules/copyleft/cgal.cmake:17 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:32 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:40 (_igl_include_full)
  build/_deps/libigl-src/cmake/libigl.cmake:27 (igl_include_optional)
  build/_deps/libigl-src/CMakeLists.txt:151 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at external/vcpkg/scripts/buildsystems/vcpkg.cmake:857 (_find_package):
  Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
  Run "cmake --help-policy CMP0074" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  CMake variable Boost_ROOT is set to:

    E:/MATLAB_File/gptoolbox/mex/build/_deps/libigl-build/Boost

  For compatibility, CMake is ignoring the variable.
Call Stack (most recent call first):
  build/_deps/cgal-src/cmake/modules/CGAL_SetupBoost.cmake:20 (find_package)
  build/_deps/cgal-src/cmake/modules/CGAL_SetupCGALDependencies.cmake:48 (include)
  build/_deps/cgal-src/lib/cmake/CGAL/CGALConfig.cmake:168 (include)
  build/_deps/cgal-src/CGALConfig.cmake:6 (include)
  external/vcpkg/scripts/buildsystems/vcpkg.cmake:857 (_find_package)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:55 (find_package)
  build/_deps/libigl-src/cmake/recipes/external/cgal.cmake:58 (cgal_import_target)
  build/_deps/libigl-src/cmake/igl/modules/copyleft/cgal.cmake:17 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:32 (include)
  build/_deps/libigl-src/cmake/igl/igl_include.cmake:40 (_igl_include_full)
  build/_deps/libigl-src/cmake/libigl.cmake:27 (igl_include_optional)
  build/_deps/libigl-src/CMakeLists.txt:151 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Boost include dirs:
-- Boost libraries:    Boost::thread;Boost::system
-- Creating target: igl_copyleft::core (igl_copyleft_core)
-- Creating target: igl_copyleft::tetgen (igl_copyleft_tetgen)
-- Third-party: creating target 'tetgen::tetgen'
-- Creating target: igl_restricted::matlab (igl_restricted_matlab)
-- Found Matlab: C:/Program Files/MATLAB/R2021b/extern/include (found version "9.11") found components: MEX_COMPILER MX_LIBRARY ENG_LIBRARY MAT_LIBRARY
-- Creating target: igl_restricted::triangle (igl_restricted_triangle)
-- Third-party: creating target 'triangle::triangle'
-- Looking for sgemm_
-- Looking for sgemm_ - found
-- Found BLAS: E:/MATLAB_File/gptoolbox/mex/build/vcpkg_installed/x64-windows/debug/lib/openblas.lib
CMake Deprecation Warning at build/_deps/eltopo-src/eltopo3d/CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


-- No build type selected, default to Release
-- Using VCPKG FindLAPACK from package 'lapack-reference'
-- Looking for cheev_
-- Looking for cheev_ - not found
-- Looking for cheev_
-- Looking for cheev_ - not found
-- Looking for cheev_
-- Looking for cheev_ - found
-- A library with LAPACK API found.
CMake Warning (dev) at build/_deps/eltopo-src/eltopo3d/CMakeLists.txt:50 (if):
  Policy CMP0054 is not set: Only interpret if() arguments as variables or
  keywords when unquoted.  Run "cmake --help-policy CMP0054" for policy
  details.  Use the cmake_policy command to set the policy and suppress this
  warning.

  Quoted variables like "MSVC" will no longer be dereferenced when the policy
  is set to NEW.  Since the policy is not set the OLD behavior will be used.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- MEX_SOURCE: aabb.cpp
-- MEX_OUTPUT: aabb
-- MEX_SOURCE: angle_derivatives.cpp
-- MEX_OUTPUT: angle_derivatives
-- MEX_SOURCE: bone_visible.cpp
-- MEX_OUTPUT: bone_visible
-- MEX_SOURCE: blue_noise.cpp
-- MEX_OUTPUT: blue_noise
-- MEX_SOURCE: collapse_small_triangles.cpp
-- MEX_OUTPUT: collapse_small_triangles
-- MEX_SOURCE: decimate_libigl.cpp
-- MEX_OUTPUT: decimate_libigl
-- MEX_SOURCE: dual_laplacian.cpp
-- MEX_OUTPUT: dual_laplacian
-- MEX_SOURCE: exact_geodesic.cpp
-- MEX_OUTPUT: exact_geodesic
-- MEX_SOURCE: fast_sparse.cpp
-- MEX_OUTPUT: fast_sparse
-- MEX_SOURCE: fit_rotations_mex.cpp
-- MEX_OUTPUT: fit_rotations_mex
-- MEX_SOURCE: fit_cubic_bezier.cpp
-- MEX_OUTPUT: fit_cubic_bezier
-- MEX_SOURCE: icp.cpp
-- MEX_OUTPUT: icp
-- MEX_SOURCE: isolines.cpp
-- MEX_OUTPUT: isolines
-- MEX_SOURCE: in_element_aabb.cpp
-- MEX_OUTPUT: in_element_aabb
-- MEX_SOURCE: psd_project_rows.cpp
-- MEX_OUTPUT: psd_project_rows
-- MEX_SOURCE: principal_curvature.cpp
-- MEX_OUTPUT: principal_curvature
-- MEX_SOURCE: readMSH.cpp
-- MEX_OUTPUT: readMSH
-- MEX_SOURCE: read_triangle_mesh.cpp
-- MEX_OUTPUT: read_triangle_mesh
-- MEX_SOURCE: segment_graph.cpp
-- MEX_OUTPUT: segment_graph
-- MEX_SOURCE: signed_distance.cpp
-- MEX_OUTPUT: signed_distance
-- MEX_SOURCE: simplify_polyhedron.cpp
-- MEX_OUTPUT: simplify_polyhedron
-- MEX_SOURCE: slim.cpp
-- MEX_OUTPUT: slim
-- MEX_SOURCE: split_nonmanifold.cpp
-- MEX_OUTPUT: split_nonmanifold
-- MEX_SOURCE: solid_angle.cpp
-- MEX_OUTPUT: solid_angle
-- MEX_SOURCE: eltopo.cpp
-- MEX_OUTPUT: eltopo
-- MEX_SOURCE: tetrahedralize.cpp
-- MEX_OUTPUT: tetrahedralize
-- MEX_SOURCE: triangulate.cpp
-- MEX_OUTPUT: triangulate
-- MEX_SOURCE: ambient_occlusion.cpp
-- MEX_OUTPUT: ambient_occlusion
-- MEX_SOURCE: bone_visible_embree.cpp
-- MEX_OUTPUT: bone_visible_embree
-- MEX_SOURCE: ray_mesh_intersect.cpp
-- MEX_OUTPUT: ray_mesh_intersect
-- MEX_SOURCE: reorient_facets.cpp
-- MEX_OUTPUT: reorient_facets
-- MEX_SOURCE: winding_number.cpp
-- MEX_OUTPUT: winding_number
-- MEX_SOURCE: box_intersect.cpp
-- MEX_OUTPUT: box_intersect
-- MEX_SOURCE: decimate_cgal.cpp
-- MEX_OUTPUT: decimate_cgal
-- MEX_SOURCE: form_factor.cpp
-- MEX_OUTPUT: form_factor
-- MEX_SOURCE: intersect_other.cpp
-- MEX_OUTPUT: intersect_other
-- MEX_SOURCE: mesh_boolean.cpp
-- MEX_OUTPUT: mesh_boolean
-- MEX_SOURCE: outer_hull.cpp
-- MEX_OUTPUT: outer_hull
-- MEX_SOURCE: point_mesh_squared_distance.cpp
-- MEX_OUTPUT: point_mesh_squared_distance
-- MEX_SOURCE: selfintersect.cpp
-- MEX_OUTPUT: selfintersect
-- MEX_SOURCE: signed_distance_isosurface.cpp
-- MEX_OUTPUT: signed_distance_isosurface
-- MEX_SOURCE: snap_rounding.cpp
-- MEX_OUTPUT: snap_rounding
-- MEX_SOURCE: trim_with_solid.cpp
-- MEX_OUTPUT: trim_with_solid
-- MEX_SOURCE: upper_envelope.cpp
-- MEX_OUTPUT: upper_envelope
-- MEX_SOURCE: wire_mesh.cpp
-- MEX_OUTPUT: wire_mesh
-- MEX_SOURCE: read_mesh_from_xml.cpp
-- MEX_OUTPUT: read_mesh_from_xml
-- Configuring done (1944.5s)
-- Generating done (1.9s)
-- Build files have been written to: E:/MATLAB_File/gptoolbox/mex/build

(base) E:\MATLAB_File\gptoolbox\mex\build>

别忘了 cmake --build . --config Release这一句啊!!!
又是漫长的等待。。。

          ]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\rigid_alignment.cpp(34,15): warning C4244: “初始化”: 从“Eigen::EigenBase<Derived>::Index”转换到“const int”,可能丢失数据 [E
:\MATLAB_File\gptoolbox\mex\build\icp.vcxproj]
          with
          [
              Derived=Eigen::Matrix<double,-1,-1,0,-1,-1>
          ]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\sort.cpp(30,17): warning C4244: “初始化”: 从“Eigen::EigenBase<Derived>::Index”转换到“int”,可能丢失数据 [E:\MATLAB_File\gpt
oolbox\mex\build\icp.vcxproj]
          with
          [
              Derived=Eigen::Matrix<double,-1,3,0,-1,3>
          ]
.................很多字..................
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\parallel_for.h(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 [E:\MATLAB_File\gptoo
lbox\mex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\internal_angles.h(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode  格式以防止数据丢失 [E:\MATLAB_File\gp
toolbox\mex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\internal_angles.h(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode  格式以防止数据丢失 [E:\MATLAB_File\gp
toolbox\mex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\AABB.h(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 [E:\MATLAB_File\gptoolbox\mex
\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\AABB.cpp(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 [E:\MATLAB_File\gptoolbox\m
ex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\AABB.h(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 [E:\MATLAB_File\gptoolbox\mex
\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\AABB.cpp(976,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 [E:\MATLAB_File\gptoolbox
\mex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\exterior_edges.cpp(91,19): warning C4267:=: 从“size_t”转换到“int”,可能丢失数据 [E:\MATLAB_File\gptoolbox\mex\build\s
igned_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\exterior_edges.cpp(92,19): warning C4267:=: 从“size_t”转换到“int”,可能丢失数据 [E:\MATLAB_File\gptoolbox\mex\build\s
igned_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\fast_winding_number.h(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 [E:\MATLAB_Fil
e\gptoolbox\mex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\fast_winding_number.h(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失 [E:\MATLAB_Fil
e\gptoolbox\mex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\signed_distance.cpp(37,34): warning C4267: “初始化”: 从“size_t”转换到“int”,可能丢失数据 [E:\MATLAB_File\gptoolbox\mex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\signed_distance.cpp(37,34): warning C4267: “初始化”: 从“size_t”转换到“const int”,可能丢失数据 [E:\MATLAB_File\gptoolbox\mex\build\signed_distance.vcxproj]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\igl\sort.cpp(30,17): warning C4244: “初始化”: 从“Eigen::EigenBase<Derived>::Index”转换到“int”,可能丢失数据 [E:\MATLAB_File\gpt
oolbox\mex\build\signed_distance.vcxproj]
          with
          [
              Derived=Eigen::Matrix<int,-1,-1,0,-1,-1>
          ]
E:\MATLAB_File\gptoolbox\mex\build\_deps\libigl-src\include\i

四、测试

  1. 首先是文件夹下生成了其他文件
    在这里插入图片描述

  2. 然后在matlab中运行Offset surface of triangle mesh in matlab,不再报错
    在这里插入图片描述

  3. 运行成功啦!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/778647.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

绝区贰--及时优化降低 LLM 成本和延迟

前言 大型语言模型 (LLM) 为各行各业带来了变革性功能&#xff0c;让用户能够利用尖端的自然语言处理技术处理各种应用。然而&#xff0c;这些强大的 AI 系统的便利性是有代价的 — 确实如此。随着 LLM 变得越来越普及&#xff0c;其计算成本和延迟可能会迅速增加&#xff0c;…

Python实战训练(方程与拟合曲线)

1.方程 求e^x-派&#xff08;3.14&#xff09;的解 用二分法来求解&#xff0c;先简单算出解所在的区间&#xff0c;然后用迭代法求逼近解&#xff0c;一般不能得到精准的解&#xff0c;所以设置一个能满足自己进度的标准来判断解是否满足 这里打印出解x0是因为在递归过程中…

经典双运算放大器LM358

前言 LM358双运放有几十年的历史了吧&#xff1f;通用运放&#xff0c;很常用&#xff0c;搞电路的避免不了接触运放&#xff0c;怎么选择运放&#xff0c;是工程师关心的问题吧&#xff1f; 从本文开始&#xff0c;将陆续发一些常用的运放&#xff0c;大家选型可以参考&#…

【最新整理】全国高校本科及专科招生和毕业数据集(2008-2022年)

整理了各省高校本科、专科招生和毕业数据等21个相关指标&#xff0c;包括招生、在校、毕业人数&#xff0c;以及财政教育支出、教育经费等数据。含原始数据、线性插值、回归填补三个版本&#xff0c;希望对大家有所帮助 一、数据介绍 数据名称&#xff1a;高校本科、专科招生…

如何处理 PostgreSQL 中由于表连接顺序不当导致的性能问题?

文章目录 一、理解表连接和连接顺序二、识别由于表连接顺序不当导致的性能问题三、影响表连接顺序的因素四、解决方案手动调整连接顺序创建合适的索引分析数据分布和优化查询逻辑 五、示例分析手动调整连接顺序创建索引优化查询逻辑 六、总结 在 PostgreSQL 中&#xff0c;表连…

[FreeRTOS 内部实现] 事件组

文章目录 事件组结构体创建事件组事件组等待位事件组设置位 事件组结构体 // 路径&#xff1a;Source/event_groups.c typedef struct xEventGroupDefinition {EventBits_t uxEventBits;List_t xTasksWaitingForBits; } EventGroup_t;uxEventBits 中的每一位表示某个事件是否…

【LeetCode:3101. 交替子数组计数 + 滑动窗口 + 数学公式】

&#x1f680; 算法题 &#x1f680; &#x1f332; 算法刷题专栏 | 面试必备算法 | 面试高频算法 &#x1f340; &#x1f332; 越难的东西,越要努力坚持&#xff0c;因为它具有很高的价值&#xff0c;算法就是这样✨ &#x1f332; 作者简介&#xff1a;硕风和炜&#xff0c;…

怎样把自己电脑ip改成动态ip:步骤与解析

在今天的网络世界中&#xff0c;IP地址是计算机与互联网沟通的桥梁。而动态IP地址&#xff0c;作为其中的一种类型&#xff0c;由于其自动分配和管理的特性&#xff0c;为用户提供了更大的便利性和灵活性。那么&#xff0c;您是否想知道怎样将电脑IP改为动态呢&#xff1f;本文…

用Excel处理数据图像,出现交叉怎么办?

一、问题描述 用excel制作X-Y散点图&#xff0c;意外的出现了4个交叉点&#xff0c;而实际上的图表数据是没有交叉的。 二、模拟图表 模拟部分数据&#xff0c;并创建X-Y散点图&#xff0c;数据区域&#xff0c;X轴数据是依次增加的&#xff0c;因此散点图应该是没有交叉的。…

js好用的动态分页插件

js好用的动态分页插件是一款简单的分页样式插件&#xff0c;支持样式类型&#xff0c;当前页&#xff0c;每页显示数量&#xff0c;按钮数量&#xff0c;总条数&#xff0c;上一页文字&#xff0c;下一页文字&#xff0c;输入框跳转等功能。 js好用的动态分页插件

java基础:流程控制

一、用户交互Scanner &#xff08;一&#xff09;基础 1、概念&#xff1a;基本语法中我们并没有实现程序和人的交互&#xff0c;但是Java给我们提供了这样一个工具类&#xff0c;我们可以获取用户的输入。java.util.Scanner 是 Java5的新特征&#xff0c;我们可以通过Scanne…

Java实现登录验证 -- JWT令牌实现

目录 1.实现登录验证的引出原因 2.JWT令牌2.1 使用JWT令牌时2.2 令牌的组成 3. JWT令牌&#xff08;token&#xff09;生成和校验3.1 引入JWT令牌的依赖3.2 使用Jar包中提供的API来实现JWT令牌的生成和校验3.3 使用JWT令牌验证登录3.4 令牌的优缺点 1.实现登录验证的引出 传统…

Spring 泛型依赖注入

Spring 泛型依赖注入&#xff0c;是利用泛型的优点对代码时行精简&#xff0c;将可重复使用的代码全部放到一个类之中&#xff0c;方便以后的维护和修改&#xff0c;同时在不增加代码的情况下增加代码的复用性。 示例代码&#xff1a; 创建实体类 Product package test.spri…

在电子表格中对多列数据去重

一、数据展示 二、代码 Sub 选中区域数据去重()Dim arr()Dim c, d, id Selection.Counti 0For Each c In SelectionIf c.Value <> "" ThenReDim Preserve arr(0 To i)arr(i) c.Valuei i 1End IfNextarr 一维去重(arr)i 0For Each c In Range("O2&…

当需要对多个表进行联合更新操作时,怎样确保数据的一致性?

文章目录 一、问题分析二、解决方案三、示例代码&#xff08;以 MySQL 为例&#xff09;四、加锁机制示例五、测试和验证六、总结 在数据库管理中&#xff0c;经常会遇到需要对多个表进行联合更新的情况。这种操作带来了一定的复杂性&#xff0c;因为要确保在整个更新过程中数据…

Charles拦截发送数据包-cnblog

Charles拦截发送数据包 打开允许断点 右键要打断点的数据包&#xff0c;打断点 重新发请求进入断点模式 修改完毕后发送

集成学习(三)GBDT 梯度提升树

前面学习了&#xff1a;集成学习&#xff08;二&#xff09;Boosting-CSDN博客 梯度提升树&#xff1a;GBDT-Gradient Boosting Decision Tree 一、介绍 作为当代众多经典算法的基础&#xff0c;GBDT的求解过程可谓十分精妙&#xff0c;它不仅开创性地舍弃了使用原始标签进行…

浪潮信息携手算力企业为华东产业集群布局提供高质量算力支撑

随着信息技术的飞速发展&#xff0c;算力已成为推动数字经济发展的核心力量。近日&#xff0c;浪潮信息与五家领先的算力运营公司在南京正式签署战略合作协议&#xff0c;共同加速华东地区智算基础设施布局&#xff0c;为区域经济发展注入新动力。 进击的算力 江苏持续加码智算…

论文回顾 | CVPR 2021 | How to Calibrate Your Event Camera | 基于图像重建的事件相机校准新方法

论文速览 | CVPR 2021 | How to Calibrate Your Event Camera | 基于图像重建的事件相机校准新方法 1 引言 在计算机视觉和机器人领域,相机校准一直是一个基础而又重要的问题。传统的相机校准方法主要依赖于从已知校准图案中提取角点,然后通过优化算法求解相机的内参和外参。这…