通过插件扩展 fpm

通过插件扩展 fpm

Fortran 包管理器有一个插件系统,可以轻松扩展其功能。本教程将展示如何安装和使用 fpm 插件。

注册表搜索工具

fpm-search 项目是一个用于查询包注册表的插件。由于它是使用 fpm 构建的,因此我们可以使用以下方法轻松在系统上安装它

git clone https://github.com/urbanjost/fpm-search
cd fpm-search
fpm install --profile release

这会将 fpm-search 二进制文件安装到 ~/.local/bin(或在 Windows 上安装到 %APPDATA%\local\bin)。

注意

确保已安装二进制文件位于 PATH 中,,运行

which fpm-search
~/.local/bin/fpm-search

如果找不到二进制文件,请使用以下方法将目录添加到路径中

bash shell 的默认设置可以在主目录中的 .bashrc 文件中找到,按照以下说明追加到 PATH

echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.bashrc
. ~/.bashrc

更改 .bashrc 后,务必对其进行资源定位,否则更改不会应用到当前 shell。

zsh shell 的默认设置可在主文件夹中的 .zshrc 文件中找到,如需追加到 PATH,请使用

echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.zshrc
exec zsh

请务必在更改 .zshrc 文件后重新启动 zsh,否则更改不会应用于当前 shell。

可以使用 cmd 提示符中的 pathman 程序来修改 PATH 变量

pathman /au %APPDATA%\local\bin

现在,通过有效的安装,我们可以从 fpm 调用新的插件。

❯ fpm search
Downloading registry ... https://github.com/fortran-lang/fpm-registry/raw/master/index.json
...

请注意,我们使用 fpm search 而不是命令中的 fpm-search。若要查找用于构建命令行界面的软件包,我们现在可以输入

❯ fpm search commandline
M_CLI : Unix-style commandline parsing using a prototype command and NAMELIST (STD:f2008)
M_CLI2 : Unix-style commandline parsing using a prototype command

若要在清单中使用其中一个软件包,我们可以通过运行生成必要的依赖项行

❯ fpm search --toml M_CLI2
M_CLI2 = { git = "https://github.com/urbanjost/M_CLI2" }

将此行添加到软件包清单中可以依赖相应项目。

总结

在本教程中,您学会了如何

  • 安装 fpm 插件

  • 使用 fpm-search 插件查询注册表

  • 从查询结果生成依赖项条目