不能 运行 "cro stub" 等等
Can't run "cro stub" etc
通过 Zef 安装了 Cro,但不能 运行 "cro stub"、"cro run" 等
(编辑:Fedora 28,来自 Fedora 的 rakudo)
[zv@localhost ~]$ cro stub hello
bash: cro: command not found...
[zv@localhost ~]$
那么,"cro" 安装在哪里?到处都找不到。
[zv@localhost ~]$ which cro
/usr/bin/which: no cro in (/usr/share/Modules/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/zv/.local/bin:/home/zv/bin)
[zv@localhost ~]$ zef info cro
- Info for: cro
- Identity: Cro::Core:ver<0.7.6>
- Recommended By: /home/zv/.perl6
- Installed: Yes
Description: Implements the asynchronous pipeline at the heart of all Cro libraries.
许可证:Artistic-2.0
来源-url: https://github.com/croservices/cro-core.git
提供:19个模块
取决于:0 项
更新:我已经安装了 "Cro",没有 "cro"(全部小写)。
按照 Takao 的回答,我尝试安装 "cro" (全部小写),但 Zef 说没有什么可以安装的了。
在 Zef 中使用“--force-install”就成功了,"cro"(全部小写)安装在 .perl6/bin 中。
此外,第一次安装 Cro 时 IO::Socket::Async::SSL 出现问题,无法在 libssl.so 中找到符号 "sk_num"...我告诉 Zef 跳过测试在 IO::Socket::Async:SSL 上,安装成功。无论如何,我想我将无法使用加密连接的 Cro。
首先,您确定安装了 cro
,而不仅仅是 Cro::Core
模块吗?您的 zef info cro
似乎打印了 Cro::Core
包裹的信息。
我尝试重现它,通过 zef install cro
(模块名称注意小写)安装。
在 zef 的安装日志的末尾,我看到:
1 bin/ script [cro] installed to:
/home/foo/.perl6/bin
上面的路径可能不同(取决于你安装Rakudo和zef的方式),但一般来说是zef存放脚本的路径,所以你需要把它添加到你的PATH中才能使用。您可以找到有关将路径添加到 PATH 变量的信息,因为这取决于您使用的 shell。
就我个人而言,我使用的是 fish,所以这是 ~/.config/fish/config.fish
中的 set PATH ~/.perl6/bin $PATH
的问题,但对于 bash 或不同的 shell 来说,它会有所不同。
好像是这样的情况:
- 你不小心安装了
Cro
(zef 认为是 Cro::Core
),而不是 cro
(这让你可以管理你想要 运行 的脚本)。试试小写的 zef install cro
。
- 您的 PATH 变量中没有 zef 安装内容的路径。可以通过添加来修复。从您的
which
输出来看,这似乎是您想要的解决方案。
通过 Zef 安装了 Cro,但不能 运行 "cro stub"、"cro run" 等
(编辑:Fedora 28,来自 Fedora 的 rakudo)
[zv@localhost ~]$ cro stub hello
bash: cro: command not found...
[zv@localhost ~]$
那么,"cro" 安装在哪里?到处都找不到。
[zv@localhost ~]$ which cro
/usr/bin/which: no cro in (/usr/share/Modules/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/zv/.local/bin:/home/zv/bin)
[zv@localhost ~]$ zef info cro
- Info for: cro
- Identity: Cro::Core:ver<0.7.6>
- Recommended By: /home/zv/.perl6
- Installed: Yes
Description: Implements the asynchronous pipeline at the heart of all Cro libraries.
许可证:Artistic-2.0
来源-url: https://github.com/croservices/cro-core.git
提供:19个模块
取决于:0 项
更新:我已经安装了 "Cro",没有 "cro"(全部小写)。
按照 Takao 的回答,我尝试安装 "cro" (全部小写),但 Zef 说没有什么可以安装的了。
在 Zef 中使用“--force-install”就成功了,"cro"(全部小写)安装在 .perl6/bin 中。
此外,第一次安装 Cro 时 IO::Socket::Async::SSL 出现问题,无法在 libssl.so 中找到符号 "sk_num"...我告诉 Zef 跳过测试在 IO::Socket::Async:SSL 上,安装成功。无论如何,我想我将无法使用加密连接的 Cro。
首先,您确定安装了 cro
,而不仅仅是 Cro::Core
模块吗?您的 zef info cro
似乎打印了 Cro::Core
包裹的信息。
我尝试重现它,通过 zef install cro
(模块名称注意小写)安装。
在 zef 的安装日志的末尾,我看到:
1 bin/ script [cro] installed to:
/home/foo/.perl6/bin
上面的路径可能不同(取决于你安装Rakudo和zef的方式),但一般来说是zef存放脚本的路径,所以你需要把它添加到你的PATH中才能使用。您可以找到有关将路径添加到 PATH 变量的信息,因为这取决于您使用的 shell。
就我个人而言,我使用的是 fish,所以这是 ~/.config/fish/config.fish
中的 set PATH ~/.perl6/bin $PATH
的问题,但对于 bash 或不同的 shell 来说,它会有所不同。
好像是这样的情况:
- 你不小心安装了
Cro
(zef 认为是Cro::Core
),而不是cro
(这让你可以管理你想要 运行 的脚本)。试试小写的zef install cro
。 - 您的 PATH 变量中没有 zef 安装内容的路径。可以通过添加来修复。从您的
which
输出来看,这似乎是您想要的解决方案。