Undefined subroutine &Book::Factorial::factorial_iterative_c called at fact.pl line 3.
####
factorial.h============================
double factorial_recursive_c(int x); double factorial_iterative_c(int x);
factorial.c============================
double factorial_recursive_c(int x) { if (x < 2) return 1;
return x * factorial_recursive_c(x - 1);
}
double factorial_iterative_c(int x) {
int i;
double result = 1;
for (i = 2; i <= x; i++)
result *= i;
return result;
}
==============================
$h2xs -n Book::Factorial -A -O -x -F factorial.h
add
'OBJECT' => 'Factorial.o factorial.o',
to Makefile.PL
$perl Makefile.PL
$make
$make test
$make install
####
23: 00000af0 45 FUNC GLOBAL DEFAULT 12 factorial_iterative_c
26: 00000aa0 76 FUNC GLOBAL DEFAULT 12 factorial_recursive_c
testing script=============================
use strict;
use Book::Factorial;
my $result = Book::Factorial::factorial_iterative_c(5);
print $result;