Многочисленные модули расширения Ruby в одном каталоге

StackOverflow https://stackoverflow.com/questions/1701611

  •  19-09-2019
  •  | 
  •  

Вопрос

Могут ли источники для дискретных модулей расширения Ruby жить в том же каталоге, контролируемые тем же extconf.rb скрипт?

Фон: у меня проект с двумя модулями расширения, foo.so а также бар которые в настоящее время живут в своих подкатализаторах, как SO:

myproject/ext/foo/extconf.rb
myproject/ext/foo/foo.c
myproject/ext/foo/foo.h

myproject/ext/bar/extconf.rb
myproject/ext/bar/bar.c
myproject/ext/bar/bar.h

Я бы предпочел, чтобы все это .c а также .h Источники просто находятся под ext/ под контролем одного extconf.rb файл, но я не знаю, как получить mkmf подыгрывать.

Это было полезно?

Решение

С MKMF вам нужно будет использовать отдельные каталоги; Он не предназначен для размещения нескольких расширений в одном и том же каталоге.

Вы можете использовать одну из альтернатив MKMF (например, MKRF), чтобы поместить расширения в том же каталоге; Я не знаю, сработает ли это. Однажды я хотел сделать то же самое, но в конце концов обнаружил, что по мере того, как моя библиотека выросла, наличие нескольких каталогов для моих расширений стало желательным для поддержания организованного проекта.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top