尝试从模块中仅导入几个(或不导入)例程:
use POSIX ();
my $n = POSIX::ceil(1.1);
Run Code Online (Sandbox Code Playgroud)
这曾经在同样的情况下对我有用,我不知道为什么:)
FreeBSD主要 兼容 POSIX。例如,它没有 SIGRTMIN在SIGRTMAX其signal.h. POSIX 的文档中对此提出了警告:
此外,一些邪恶的供应商会声称符合1003.1,但实际上并非如此:他们不会通过PCTS(POSIX 合规性测试套件)。例如,某个供应商可能未定义 EDEADLK,或者 open(2) 设置的 errno 值的语义可能不太正确。Perl 不会尝试验证 POSIX 合规性。这意味着您当前可以成功地说“使用 POSIX”,然后在您的程序中稍后您会发现您的供应商很松懈,并且根本没有可用的 ICANON 宏。这可以被解释为一个错误。
eugene y的解决方案可能会起作用,因为它会阻止自动导出到您的命名空间,但请务必在任何调用ceil等前面加上POSIX::.
| 归档时间: |
|
| 查看次数: |
1265 次 |
| 最近记录: |