2009-04-07 10 views

Respuesta

16

No, h2xs no está en desuso. Module :: Starter es ciertamente más conveniente si creas muchos módulos Perl puros, pero no hay razón para evitar h2xs. Sin embargo, recomendaría leer todo el documento antes de usarlo, para que sepa qué es lo que desea que haga o no haga.

+0

Lo usé hace años, solo pensé que había sido reemplazado. –

+0

Solo ha sido reemplazado por personas que no usan XS (que es la mayoría de los autores). –

5

Personalmente solo uso Module :: Starter y agrego el archivo .xs yo mismo. Depende de cuál sea tu objetivo: si estás haciendo un mapeo de uno a uno para una C api, entonces h2xs puede hacerte un montón de repeticiones, pero si estás haciendo una interfaz completamente nueva, o cuando estás ' Solo estoy haciendo cosas con Perl en sí (y no con alguna biblioteca externa), no agrega mucho, pero sí problemas en mi humilde opinión.

+1

Bueno saber. Nunca le presté atención a la magia que ocurre en el archivo pm, pero parece que solo necesita agregar dos líneas para que necesite XSLoader; XSLoader :: load ('Pax :: PerlHash', $ VERSION); ¿Es correcto, y simplemente copia ppport.h desde otro módulo, o es innecesario? –

+2

ppport.h es para la portabilidad de versiones anteriores de Perl. El tipo de cosas que hago usualmente lo hacen imposible (la mayoría de mis módulos XS requieren 5.8 de todos modos, uno incluso requiere 5.10), pero en su caso puede ser diferente. La forma correcta de generar ppport.h es usando Devel :: PPPort. –

-1

También debe buscar en el uso Inline::C

+1

Bueno, como estoy reescribiendo algo para no necesitar/usar Inline :: C, sería una tontería (sonreír). Inline :: C es ideal para el prototipado rápido, pero apesta para implementarlo en la producción (algunos usuarios no tienen directorios de inicio, por lo que los archivos de objeto terminan en/_Inline y otros problemas). –

0

Personalmente, cada vez que empezar a hacer un nuevo módulo sólo lo hago por cp archivos ING y de edición de otro módulo de la mina que es similar a ella, y la edición según corresponda. Por supuesto, nada en ese enfoque dice que tiene que ser uno de los míos. Hay un montón de código en CPAN que puede tomar copias de e inspirarse en ...

Cuestiones relacionadas