1.几个使用类似 BSD ports 软件包管理的 Linux 发行版
2.软件包系统管理软件spack的使用方法
3.vasp6.3.0 cpu/gpu 安装教程
几个使用类似 BSD ports 软件包管理的 Linux 发行版
四大BSD系统均采用port系统管理第三方软件包,此系统将源代码从软件包官网下载,或由系统维护者为方便和避免链接失效而缓存源码包。
FreeBSD首先采用此模式,随后NetBSD参考其方式创建支持不同操作系统的pkgsrc,OpenBSD源自NetBSD,防红html源码推出了自己的port系统,而DragonflyBSD衍生自FreeBSD,起初使用pkgsrc,后来借鉴FreeBSD的port系统,形成了独特的dports。
port系统管理软件包无需存放二进制文件或源代码,节省空间。构建脚本编写简单,方便定制,hoorayos系统源码通常采用Makefile,简化配置,仅需定义几个变量,即可通过包含port系统通用makefile完成构建。
此系统优点被多个Linux发行版所采纳,包括Spack、MacPorts和Homebrew。尽管Slackware是一个二进制发行版,其SlackBuilds集合类似于port系统,但其使用方式推荐下载文件(可通过sbopkg工具辅助),未提供port系统体验。
总结而言,尽管Gentoo和Arch作为BSD系统中源码包派别和二进制包派别的代表,但CRUX可视为简化版的nrpe 源码下载Gentoo,而Void、NixOS和Guix则代表更稳定、更高级的Arch版本,处在发展初期的Chimera Linux也颇有趣味。
建议Linux发行版选择困难症患者可轮流体验,仅限桌面使用,在虚拟机环境中操作为宜,而服务器领域仍推荐使用Debian和Ubuntu。
参考:
软件包系统管理软件spack的使用方法
spack是一个由美国劳伦斯利弗莫尔国家实验室开发的Python库,它旨在简化软件包的管理和编译过程,特别是在高性能计算(HPC)环境中,以解决复杂软件依赖性以及不同编译器、并行库和MPI版本之间的兼容性问题。本文将详细介绍spack的vb lis源码基本使用方法。
spack的安装非常便捷,直接下载即可。为了确保spack能够正常运行,需要调用其目录下名为share/spack的设定文件。对于使用bash环境的用户,可以将相应的命令加入到~/.bashrc文件中以完成spack的设定。
安装编译器是使用spack的第一步,spack会扫描系统中可用的编译器,并将其登录到spack环境中。例如,如果系统中安装了gcc .4.0,spack将该编译器记录在compiler.yaml文件中。用户也可以根据需要自定义这个文件。为了列出spack环境下的按钮导航源码可用编译器,可以执行相关命令。
如果需要安装其他版本的编译器,可以先查看spack的预制设定。使用特定命令可以下载并编译源代码,该过程可能需要一些时间。安装完成后,通过特定命令可以查看安装的编译器版本,如gcc@.2.0。
软件包管理是spack的核心功能之一。在安装编译器后,可以使用命令查询可用的软件包列表。用户可以加载或卸载已登录在spack环境中的软件包,通过相应的命令操作软件包。
安装应用软件包的步骤相对简单,使用spack install命令即可完成。例如,安装大型联立方程组求解器superlu时,需要指定使用特定版本的gcc编译器。安装完成后,通过查询可以确认软件包的状态,以及其对应的编译器版本。
spack支持用户在安装软件包时进行定制,以适应特定系统环境或需求。例如,在Blue Gene/Q计算机上使用gcc4.8.5编译软件,或者在无Qt支持的情况下安装mpileak版本。特定软件的可允许编译参数可以通过spack info softwarename命令查询。
安装OpenFOAM等复杂软件包的过程可以通过spack完成,用户可以参照特定文档进行操作。在运行spack编译的软件时,需要注意正确设定运行环境以调用正确的动态库文件。
对于希望自定义spack install动作的用户,spack采用了软件包管理的虚类设计,使得各软件包的下载、编译和安装等动作在对应的实类上定义。用户可以修改或更新这些实类以适应特定需求,例如修正nalu的安装过程。
综上所述,spack为软件包的管理和编译提供了强大的支持,简化了复杂软件的部署过程,特别是在HPC环境中,提高了开发效率和系统兼容性。
vasp6.3.0 cpu/gpu 安装教程
本文主要介绍了在CPU和GPU上安装VASP 6.3.0的详细步骤,包括使用spack管理和源码包的部署。首先,从百度网盘下载合适的源码包,建议将其放置在公共目录或用户的家目录,然后通过tar命令解压。
接下来,配置环境变量,确保Python3和必要的工具如git、patch已安装,同时添加基础编译器如gcc和gfortran。运行spack --version检查spack版本并配置编译器。在~/.spack目录下,创建config.yaml和modules.yaml文件,自定义软件安装位置、目录规范和加速编译设置,如禁用SSL验证和校验。
在spack中添加本地源码包仓库,并配置bootstrap库以提高离线可用性。然后,查看spack收录的软件列表,根据机器类型(AMD和Intel)选择合适的依赖包,如MPI、数学库和FFTW等。对于AMD机器,推荐使用GNU库和mpich,而Intel机器则使用Intel SDK和nvhpc(仅GPU)。
针对不同的Vasp版本(如5.4.4和6.3.0),需要编辑makefile.include文件进行特定配置,如修改编译选项和库路径。最后,创建环境变量脚本(如vasp.sh),以简化后续使用。对于GPU机器,还要注意声明qd库以避免运行时错误。
此外,文章还提及了beef插件的编译和安装,以及phonopy和VASPkit的安装步骤,但需要注意的是,有些功能可能因版本兼容性问题而未进行详细测试。