开源项目Lethe Windows编译过程

  • 准备工作
  1. 下载安装cmake,最低版本要求3.13;
  2. 下载安装Visual Studio,需支持c++17标准,当前使用的是Visual Studio 2022;
  3. 下载安装MPI,其他MPI存在其他问题(微软不支持0,openmpi在Windows上也不好编译,mpich也没有高版本的安装包,等等),当前使用intel-mpi-2021.14.1.8;
  4. 下载安装zlib最新版本即可;
  5. LAPACK for Windows下载lapack及blas:
  6. 下载安装doxygen最新版本即可。
  • 编译p4est

https://gitcode.com/gh_mirrors/p4/p4est下载源码到本地,当前是在E:\temp,解压之后在E:\temp\p4est-2.8.6创建build文件夹,打开cmake-gui.exe,安装路径E:/temp/p4est-2.8.6/build/local,根据实际情况即可,需注意MPI路径,其他不重要

生成完成后打开vs2022编译,会生成以下文件

  • 编译Trilinos

从主页http://trilinos.sandia.gov/或Git下载源码解压到本地,当前是在F:\temp,解压之后在F:\temp\Trilinos-master路径下创建build文件夹,打开cmake-gui.exe,安装路径F:\temp\Trilinos,根据实际情况即可,需注意MPI路径:

Lapack路径根据实际情况写:

Trilinos需要勾选以下:

  • 编译dealii

从官网https://www.dealii.org/或者git下载源码解压到本地,当前是在E:\temp\dealii\dealii,解压之后在E:\temp\dealii\dealii路径下创建build文件夹,打开cmake-gui.exe,安装路径E:/temp/dealii/install,根据实际情况即可,需注意MPI路径:

生成之前需要在Trilinos的安装路径下F:\temp\Trilinos\lib\cmake将所有的Config.cmake文件中最下面的set_target_properties(${libname}

PROPERTIES DEPRECATION "${deprecationMessage}" )删除,否则会报错,具体报啥错记不得了。例如TeuchosComm找到并打开\Trilinos\lib\cmake\TeuchosComm\ TeuchosCommConfig.cmake:

在E:\temp\dealii\dealii\cmake\configure找到configure_50_p4est.cmake并打开,删除以下代码,不然会报错p4est版本低于2.2,实际上我们都已经是2.8.6版本了:

  • 编译lethe

从主页或Githttps://gitcode.com/gh_mirrors/let/lethe下载源码解压到本地,当前是在E:\temp,解压之后在E:\temp\lethe-master路径下创建build文件夹,打开cmake-gui.exe,只需要填写doxygen路径即可:

有些代码可能会把 &&、||写成and、or改成实际的即可,在编译applications时需要以下链接器:

运行时需要以下动态库:

相关推荐
caimouse20 小时前
Reactos 第 4 章 对象管理 — 4.5 几个常用的内核函数
c语言·windows·架构
caimouse21 小时前
Reactos 第 4 章 对象管理 — 4.3 句柄和句柄表(Handle & Handle Table)
c语言·windows·架构
Chase_______1 天前
【Java基础 | 15】集合框架(中):Set、HashSet、TreeSet 与哈希表
java·windows·散列表
caimouse1 天前
Windows NT 内核架构(主通用模型)流 NT 5.x/10+
windows·架构
caimouse1 天前
Reactos 第 3 章 内存管理 — 【中篇】Hyperspace、系统空间、API 与异常
c语言·开发语言·windows·架构
caimouse1 天前
Reactos 第 4 章 对象管理 — 4.1 对象与对象目录
服务器·c语言·开发语言·windows·架构
影寂ldy1 天前
C# 索引器(Indexer)超全笔记【基础 + 重载 + 实战练习】
windows·microsoft
caimouse1 天前
Reactos 第 4 章 对象管理 — 4.2 对象类型(Object Type)
c语言·windows·架构
caimouse1 天前
Reactos 第 4 章 对象管理 — 4.4 对象的创建
windows·架构
Chase_______1 天前
【Java基础 | 16】集合框架(下):Map、HashMap 与 TreeMap
java·windows