从网上下载后在项目中使用Time::HiRes:HiRes.so:未定义符号:Perl_Gthr_key_ptr

问题描述 投票:0回答:1

上周我刚刚开始接触 Perl,因为我被迫修复生产中遗留代码中的一些问题。

情况是,我们的生产中安装了 perl 5.32.0,我无法更改或安装其中的任何软件包。

在我的代码中,我必须获取以毫秒为单位的时间,可以使用

Time::HiRes
模块获取时间。 但是,我无法安装它! 因此,我将其与项目文件一起复制到我的项目中。

我从

https://metacpan.org/pod/Time::HiRes
下载了Time-HiRes-1.9764.tar.gz,解压后将
HiRes.pm
复制到我项目下的
Time
目录下。

我收到此错误:

/usr/local/bin/perl: symbol lookup error: /usr/local/bin/perl_5.6.1/lib/site_perl/5.6.1/i686-linux/auto/Time/HiRes/HiRes.so: undefined symbol: Perl_Gthr_key_ptr

现在,我的问题是: 从网上下载 HiRes.pm 并在没有任何依赖的情况下复制到本地项目中的正确方法是什么? 2. 列出项目

perl timestamp time-hires
1个回答
0
投票
  1. Time::HiRes 是一个核心模块,即它应该是 Perl 安装的一部分。

  2. 安装 Perl 模块的标准方法是

perl Makefile.PL
make
make test
make install

一些 Perl 模块不是纯 Perl,它们还包含需要编译的 XS 代码,Time::HiRes 就是其中之一。

© www.soinside.com 2019 - 2024. All rights reserved.