Ошибка сборки DRBD 9 из tarball на Oracle Linux 6

Ошибка сборки DRBD 9 из tarball на Oracle Linux 6

В настоящее время я пытаюсь протестировать DRBD 9 (drbd-9.0.21-1 и drbd-utils-9.13.0) на системе Oracle Linux 6 (то же самое для производства), и она изолирована от внешней сети, поэтому использование yum исключено (и я не могу обновить дистрибутив, так как он будет использоваться в работающем производстве). В настоящее время я собираю его с помощью tarball.

Документацияничего не говорится о требуемых пакетах и ​​версиях, поэтому я запускаю makeи извлекаю необходимые RPM-пакеты и используюэто руководство Centos 6иэто руководство Centos 7пакеты.

Наконец, я используюэто руководство Centos 6(Я знаю, что версия DRBD там 8.4, но мне придется обойтись ею, так как другого руководства по моему случаю нет, иэто руководство Centos 7очень похож, без drbdmanage, который недавно был заменен на linstor) для его сборки.

Я могу нормально запустить make kmp-rpm DRBD9 и drbd-utils, но когда я запускаю dbrd-utils, он выдает мне эту ошибку (я запускаю его как root):./configuremake rpm

RPM build errors:
    %defattr doesn't define directory mode so file mode defined in %defattr is used for directory: /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/lib/drbd
    File not found: /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/usr/sbin/drbdmon
    %defattr doesn't define directory mode so file mode defined in %defattr is used for directory: /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/usr/lib/drbd
    %defattr doesn't define directory mode so file mode defined in %defattr is used for directory: /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/var/lib/drbd
    %defattr doesn't define directory mode so file mode defined in %defattr is used for directory: /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/var/run/drbd
    File not found by glob: /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/usr/share/man/man8/drbdmon-*
make: *** [rpm] Error 1


# ls /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/lib/
drbd  udev

# ls /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/usr/sbin/
drbdadm  drbdmeta  drbdsetup

# ls /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/usr/lib/
debug  drbd  ocf

# ls /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/var/lib/
drbd

# ls /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/var/run/
drbd

# ls /root/rpmbuild/BUILDROOT/drbd-9.13.0-1.el6.x86_64/usr/share/man/man8/
drbd-8.3.8.gz     drbdadm-8.4.8.gz   drbdmeta-8.3.8.gz   drbdsetup-8.4.8.gz
drbd-8.4.8.gz     drbdadm-9.0.8.gz   drbdmeta-8.4.8.gz   drbdsetup-9.0.8.gz
drbd-9.0.8.gz     drbddisk-8.3.8.gz  drbdmeta-9.0.8.gz
drbdadm-8.3.8.gz  drbddisk-8.4.8.gz  drbdsetup-8.3.8.gz

Насколько я понимаю, он не смог найти drbdmon. Есть ли способ решить эту проблему? Я что-то упускаю или невозможно собрать DRBD 9 на EL6?

решение1

Я наконец-то смог собрать drbd-utils, используя новую версию gcc. Встроенная версия gcc моего oracle linux — 4.4, в которой нет C++11.

я используюэто руководство по временному использованию новой версии gcc в оболочке.

Связанный контент