in reply to Re^3: Making Inline::C modules fit for CPAN
in thread Making Inline::C modules fit for CPAN

Irrespective of how well (or how badly) you made your point, it is certainly true that I missed it :-)
I can't fault most of what you have written here. My only doubt relates to:

The point is that package managers assume that no compile is needed on the target, and no compiler is necessary

With a properly built Inline::C binary package that's the case. All that the target needs is to have Inline installed - and it's quite possible to install Inline on a machine that doesn't have a C compiler. For the details of one way to construct such a binary package, see "How do I create a binary distribution using Inline?" at http://search.cpan.org/~ingy/Inline-0.44/Inline-FAQ.pod.

Similarly, with Steffen's proposed module, I think it should be possible to create a binary that will work on a target machine that does not have a compiler. As long as the package contains the necesary so/dll, then XSLoader will load it and all should be sweet, so long as the target machine has Module::Inline::C installed. (That's if I understand Steffen's proposal correctly ... which is by no means guaranteed.)

Basically, whether it's a straight out Inline::C module, or a Module::Inline::C module, it will be possible (albeit, perhaps kludgy) to build a package that doesn't need a C compiler on the target machine. On thinking further about it, I suspect that creating the binary package will be less of a kludge with Steffen's module than with Inline::C.

Of course, having written all of this, it now occurs to me that perhaps you were simply wanting to make Steffen aware of the 'packaging' aspect ... to which I can only say "Good point!" :-)

Cheers,
Rob
  • Comment on Re^4: Making Inline::C modules fit for CPAN