Установка ruby-packetgen дает ошибку установки gem - PullRequest
0 голосов
/ 10 октября 2018

Я пытаюсь установить 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, но получил ту же ошибку.Кто-нибудь знает, что я здесь делаю не так?Ссылка на инструкцию по установке здесь.

1 Ответ

0 голосов
/ 10 октября 2018

Не используйте sudo gem install, но настоятельно рекомендуется использовать менеджер версий ruby, возможно, RVM, по нескольким причинам, см. 'sudo gem install' или 'gem install' и местоположения gem

Исходя из вашей ошибки, похоже, что вы пытаетесь использовать системный рубин, который, вероятно, будет иметь проблемы с правами доступа и / или библиотекой.Их легко решить с помощью диспетчера версий, который имеет много преимуществ, в том числе возможность использовать разные версии ruby ​​в одной и той же системе и не требует установки sudo или корневых инсталляций гемов.

Вы можете установить RVM отсюда

Инструкции по ссылке на гем, которую вы разместили, говорят, что гем зависит от sudo apt install libpcap-dev, которая является системной библиотекой, которую должен построить ваш гем.Я полагаю, вы уже сделали этот шаг, верно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...