当前位置: 首页 > backend >正文

Windows11+VS2019配置Libigl-2.4.1

Windows11+VS2019配置Libigl-2.4.1

由于课题需要,所以出一篇配置Libigl的博客,制作不易,请多多点赞

一、官网下载

官网:https://libigl.github.io/

GitHub下载地址:https://github.com/libigl/libigl

这里我们选择下载Libigl-2.4.1版本:
在这里插入图片描述
下载后就是这个压缩包:
在这里插入图片描述
解压缩后的文件内容:

在这里插入图片描述

二、CMake编译

2.1 流程

  1. 在解压后的libigl-2.4.0目录中创建一个build目录,这个目录初始为空目录

  2. 打开cmake-gui,你需要提前在电脑中安装Cmake,这里我的Cmake的版本是:3.22.4

  3. 在下图中:

    1. 第一步就是设置【source code】:定位到你下载解压后的libigl-2.4.0目录,这里我只是把名字改成了libigl
    2. 第二步就是设置【build】:定位到libigl-2.4.0目录下新建的build目录
    3. 第三步就是点击【configure】,看到如图标识【4】中Configuring done标识构建完成,这里有一些坑我在下文提到,注意这一步需要网速好,所以如果一直下载不下来就一直下,有一个问题可以用下文中的解决方法进行解决,往下看。
    4. 第四步就是点击【Generate】
    5. 第五步就是点击【Open Project】
      在这里插入图片描述
      在这里插入图片描述

看到如图这两个标识就标识编译完成,恭喜!

2.2 踩坑一

报错信息:

  • File already exists but hash mismatch. Removing...
  • Boost 下载链接重定向到了 JFrog 的暂停页

错误说明:

  • JFrog 的 Boost 镜像服务已经暂停(或者说暂时下线),于是返回了个 HTTP 302 和后续 409 错误。这不是你电脑的问题,这是“Boost 官方镜像挂了”。
  • 实际下载的文件内容是空的或错误页,导致 SHA256 校验失败
  • 也就是下载的是空包或者 HTML 错误页

解决方法:手动下载 Boost 并放置到正确路径

  1. https://www.boost.org/releases/1.71.0/在该网站中下载boost_1_71_0.tar.bz2(这里也可以看到SHA256码与Cmake中的一致):

在这里插入图片描述

  1. 将下载下来的boost_1_71_0.tar.bz2放在之前build目录下的_deps\boost-subbuild\boost-populate-prefix\src这个目录下(注意,这个_deps目录是在build目录下面)

在这里插入图片描述

  1. 如果一致,重新构建就能跳过下载,直接构建 Boost。

2.3 踩坑二

报错信息:

  • fatal: unable to access 'https://github.com/libigl/CoMISo.git/': Failed to connect to github.com port 443 after 21097 ms: Could not connect to server

错误说明:

  • Git 尝试访问 GitHub(HTTPS 443 端口)失败了

解决方法:

  • 一直重试,这个就看人品了,相信自己可以成功!

三、在VS2019中编译

3.1 流程

在Cmake中点击【Open Project】后进入VS2019

注意:

  • 这里我们现在Debug模式下进行编译,后续再切换到Release再编译一遍,这样就可以根据你的项目引入不同的lib文件
  • 如果你的电脑是64位,就选择x64,否则选x86,这点也很重要
    在这里插入图片描述

第一步:打开如图的目录

在这里插入图片描述

第二步:随便选择一个项目,这里我以405_AsRigidAsPossible为例,注意,这里根据你的项目需求而定,由于我的项目需求,所以我分别编译了101、102、103、206、607,这样build/lib/Debug目录下就会出现我需要的lib文件

在这里插入图片描述

第三步:右键该项目,将该项目【设为启动项目】

在这里插入图片描述

第四步:点击开始调试

在这里插入图片描述

第五步:出现该页面,恭喜你编译成功,接下来切换到【Release】,然后再进行调试即可;

在这里插入图片描述

3.2 小提示

如果你也不知道需要什么,就一股脑全编译:右键【ALL_BUILD】设为启动项,然后启动即可,注意在DebugRelease模式下分别编译一遍

在这里插入图片描述

四,项目导入

由于Libigl主要是一个头文件库,我们一般只需要包含它的头文件即可

第一步:用VS2019打开你的项目或者新建一个项目,右键你的项目,点击【属性】,注意这里的配置,我选择的是【Release】、平台是【x64】,选择Release可以少一些bug,然后我的电脑本身也是64位,所以平台选择x64,根据自己的电脑配置和项目进行选择,接着选择【C/C++】:

在这里插入图片描述

第二步:选择【附加包含目录】,点击【编辑】

在这里插入图片描述

第三步:添加你的libigl目录下的include目录路径,如下:

在这里插入图片描述

总结:接着你就可以快快乐乐的使用Libigl

补充:之前编译得到的.lib文件你也可以导入到自己的项目中,在build目录下的lib目录,然后你会看到Debug目录和R

http://www.xdnf.cn/news/13240.html

相关文章:

  • EasyImage实战:结合内网穿透技术实现私有图床部署过程
  • DBLP数据库是什么?
  • 如何用 esProc SPL 操作大 csv
  • Linux【5】-----编译和烧写Linux系统镜像(RK3568)
  • MIPI信号为什么不能进行长距离传输
  • 相关类可视化图像总结
  • 第二十三课:手搓随机森林
  • 基于PSO与BP神经网络分类模型的特征选择实战(Python实现)
  • C语言中提供的第三方库之哈希表实现
  • 比较数据迁移后MySQL数据库和达梦数据库中的表
  • 深入实战多平台抓包:Sniffmaster与常见抓包工具协同利器解析
  • 前端绘制道路鱼骨图
  • 502的普通频谱参数设置
  • 红外测温传感器如何提升智能制造水平?
  • 学习时困了怎么办
  • 2020年IS SCI2区,多样本和遗忘能力粒子群算法XPSO,深度解析+性能实测
  • Python打卡day49!!!
  • 【精彩回顾.上海交通大学专场】---大模型推理需求下的计算生态链变革
  • “概率鹦鹉”难解语义等价验证的NPC难题: 从技术本质看LLM在SQL优化任务中的致命缺陷
  • 高并发内存池的轻量级模拟-细节处理与优化部分
  • 多协议诱骗电压芯片优势,如何防止负载太大而导致充电器复位重启
  • DisplayPort 2.0协议介绍(2)
  • JavaScript 标签加载
  • AI知识库调用全攻略:四种实战方法与技术实现
  • c++第七天 继承与派生2
  • 安全编程期末复习12(红色重点向下兼容)
  • 河南建筑安全员C证考试常见题及答案解析
  • 2.7 判断.lib和.a是静态库 还是动态库的导入库
  • 基于Docker部署MYSQL主从复制
  • RT_Thread——线程管理(下)