ruby- packetgen 安装出现 gem 安装错误

ruby- packetgen installation gives gem install error

我正在尝试安装 packetgen,这是一个用于制作和操作网络数据包的库。我按照所有说明进行操作,并安装了所有必要的库。然而,当我 运行 sudo gem install packetgen 在我的 Linux 机器上安装它时出现错误:

ERROR:  Error installing packetgen:
ERROR: Failed to build gem native extension.

current directory: /var/lib/gems/2.3.0/gems/pcaprub-0.12.4/ext/pcaprub_c
/usr/bin/ruby2.3 -r ./siteconf20181009-29130-us1azm.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h

extconf failed, exit code 1

Gem files will remain installed in /var/lib/gems/2.3.0/gems/pcaprub-0.12.4                  for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0   /pcaprub-0.12.4/gem_make.out [here][1]

我运行命令作为sudo,但得到了同样的错误。有谁知道我在这里做错了什么? link 安装说明是 here.

不要使用 sudo gem install,但强烈建议您使用 ruby 版本管理器,可能是 RVM,更多原因请参见 'sudo gem install' or 'gem install' and gem locations

根据您的错误,您似乎正在尝试使用您的系统 ruby,该系统可能具有权限 and/or 库依赖性问题。使用版本管理器可以轻松解决这些问题,它具有许多优点,包括能够在同一系统上使用不同的 ruby 版本,而不必使用 sudo 或 gem 的根级安装.

您可以安装RVM from here

您发布的关于 gem link 的说明确实说 gem 取决于 sudo apt install libpcap-dev,这是您的 gem 需要构建的系统库。我假设你已经完成了那一步?