hdf5安装_Win10+VS2019+HDF5下CGNS源码编译CGNSTOOLS

由于在科学计算中经常会碰到大量的代码库需要编译,而这种编译过程往往并不是那么显而易见的。对于很多科研人员来说,这构成了使用上的一种瓶颈,很多人费时费力不得其门而入,甚至开始怀疑人生,少部分人折腾一番后不明所以的就搞定了,然而由于自己也折腾的很辛苦,往往不愿意或者没有精力把经验记录下来与大家分享。这种时候,就是本文得已出现的一种理由。本文作者恰恰有这方面的自由和闲情逸致来完成这样的工作,并乐于把结果和大家分享,起到一种抛砖引玉的作用,这也是一种收获。

对于CGNS4.0.0源代码来说,由于搞这些开源库的娃一般都是在linux环境下做,这些人往往对于windows下编程不是那么认真,他们的代码实际上并没有在windows环境下进行严格的考验,虽然没有什么大问题,但是小错不断。导致在windows下开发的研究人员不能很好的使用这些成果。

CGNSTools要在windows下面编译通过必须对这些错误进行修正(小错,至少本文作者目前认为是如此,具体原因也不深究,毕竟不是自己写的,能改过来运行即可)。

下面具体阐述编译过程:

8e86636b5d52062d7f5f0a1610fa24d4.png

使用CMake操作界面,选择CGNS_BUILD_CGNSTOOLS,

CGNS_ENALE_64BIT,CGNS_ENABLE_HDF5,CGNS_USE_SHARED

点击Configure后有:

e7cebc90a0c00caef38e3dbe51cb1e48.png

再次点击Configure后有:

163aefac146201b8aa93cd87adf72d44.png

再次点击Configure,并点击后Generate有:

8499ec757e069e783667f8e481daaade.png

说明工程项目生成成功。

下面在系统管理员权限下打开集成开发环境vs2019,有:

2c190d7db1a289a7e7bb4132ac874843.png

可见工程都已经配置完毕。

如果这时直接编译会出问题。

253848c6560e15a74c2a1a2948f84280.png

类似上面这种错误。

出现这几个问题的地方在calwish,cgiwish,plotwish,tkogl这几个项目中。

改正的方式是:将tkogl中出现的类似部分

cf351768d4f814a7cde854c6e2b4d3d7.png

改为

442b1dc41a917f7e1ce415158917caa9.png

将calwish,cgiwish,plotwish中的winmain.c中的

bdd09ae67100f8900b462550ccdaa975.png

改为:

7b1921f71a2225fc21849cd0dd896e1b.png

问题得到解决。

3156a3e8120cbd722efcf82943fcf321.png

选择构建INSTALL有:

3c5557cf2540517c575e2cf45abf961b.png

b1be8171da75a6f93411e2086ca45187.png

这样,在Win10+VS2019+HDF5下CGNS4.0.0源码编译CGNSTOOLS完毕。

编译后运行Cgnsview界面如下:

0e2be0acc558b086b9f158d914867cca.png

这样有助于和自己代码读取一些CGNS格式的文件进行比较,少走一些弯路。

这个后来有人问起,是不是需要其它库,答案是需要的,tcltk库,我觉得是常规操作就没提了。要去下载tcltk,本文为了方便,使用的是ActiveTcl,一下子就两个库同时搞定。

Download and Install Tcl: ActiveTcl | ActiveState​www.activestate.com
2615acdc253ce95570c2d2cf684cab91.png

11bd884b16cd17e765ac568d048db8fe.png

本文下载的是ActiveTcl8.6,安装后效果:

2737fd77a131658fbc187892ac2717b2.png

3b38bf16954f2ee155c09a0498d170c3.png

469d3129068823265b044ed52595c99f.png

这么看来,再简单的问题,对于初学者来说都可能是一个障碍,如临深渊,如履薄冰。

如果此文节省了你的时间,不要忘了点赞,赞赏,及其它。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值