使用vcpkg配置libigl

vcpkg是一个c++包管理工具,在windows中也可以很方便地与vs进行集成,像CGAL已经在官方文档上推荐使用,目前libigl也已经可以使用vcpkg进行配置

vcpkg安装

按照教程操作即可,注意:

  • 如果.\vcpkg\bootstrap-vcpkg.bat一步长时间无法下载或者失败,可以直接把网址复制下来到浏览器下载vcpkg.exe,放到vcpkg文件夹下即可。请添加图片描述
  • vcpkg本身不大,但之后安装的c++包都在同一目录中,建议放在一个足够大的磁盘下。
  • vs建议使用
  • 建议使用powershell窗口,可以在powershell中配置代理端口,可以在clash的配置文件中找到mixed-port: 1234
$env:HTTP_PROXY="http://127.0.0.1:1234"
$env:HTTPS_PROXY="http://127.0.0.1:1234"

安装libigl

如果只是简单地使用vcpkg install libigl只能安装libigl的核心(core),依旧无法进行#include <igl/opengl/glfw/Viewer.h>
输入vcpkg search libigl,可以看到
在这里插入图片描述
可以看到有多个包,都需要安装,可以使用指令

vcpkg install libigl[core,glfw,opengl,imgui,xml,embree] --recurse

其中末尾的--recurse是因为之前我已经进行过了vcpkg search libigl,安装额外组件需要进行rebuid。

配置visual studio

其实使用vcpkg integrate install后就可以直接在vs项目(注意cmake项目不可以)中使用vcpkg安装的包,但libigl还需要一些额外配置,注意以下配置要选择All Configurations, 不然在debug 和 release之间切换时又需要重新配置
在这里插入图片描述

  • 如果在使用libigl时报出
igl error C2440: ‘=‘: cannot convert from ‘char [260]‘ to ‘LPWSTR‘ 

打开Visual studio Properties页面,将 Configuration Properties → Advanced → Character Set 改成 Use Multi-Byte Character Set ,即可解决问题,参考。你只能在当前项目的属性页中找到Advanced选项,也只能针对当前项目配置,无法为所有项目配置。

  • 如果报出
error C4996: 'scanf': This function or variable may be unsafe. 

参考,更改vs预处理定义:项目->属性->配置属性->C/C++ -> 预处理器 -> 预处理器定义,增加:

_CRT_SECURE_NO_DEPRECATE
  • 如果报出
 fatal error C1128: number of sections exceeded object file format limit: compile with /bigobj

参考
项目->属性->C/C++ ->命令行->添加 /bigobj 即可

libigl 例程

如果你想要跑官方例程,又不想使用cmake,可以直接把教程main.cpp中的代码复制到你的项目中

  • 教程中使用的数据下载
  • 教程中使用TUTORIAL_SHARED_PATH指向数据的文件夹,如果使用cmake编译项目的话该变量是不需要我们操作的。我们可以在程序的最开头用宏定义定义该变量,地址就是你解压数据的文件夹,注意使用反斜杠/
#define TUTORIAL_SHARED_PATH "PATH/TO/libigl-tutorial-data-master"
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值